diff options
author | yaworsky <yaworsky> | 2005-11-17 04:49:41 +0000 |
---|---|---|
committer | yaworsky <yaworsky> | 2005-11-17 04:49:41 +0000 |
commit | abcf1cdf7337fdb09e553e51a8b36216e37575d6 (patch) | |
tree | 63f764edfa31640ebdd91a44b80023f9ebf76f11 /daemon/dest_file.c | |
parent | 8849aedae75cec193d273badb2a5687c04e098a7 (diff) | |
download | syslog-win32-abcf1cdf7337fdb09e553e51a8b36216e37575d6.tar.gz syslog-win32-abcf1cdf7337fdb09e553e51a8b36216e37575d6.tar.xz syslog-win32-abcf1cdf7337fdb09e553e51a8b36216e37575d6.zip |
Described race condition.
Diffstat (limited to 'daemon/dest_file.c')
-rw-r--r-- | daemon/dest_file.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/daemon/dest_file.c b/daemon/dest_file.c index f08cedb..fb63195 100644 --- a/daemon/dest_file.c +++ b/daemon/dest_file.c @@ -421,6 +421,11 @@ static unsigned __stdcall writer_thread_proc( void* arg ) } done: + /* FIXME: possible race condition + We detach writer from destination before close file. + So if a new message has arrived and detached writer is flushing its queue + then a new instance will can not open file. + */ detach_writer_from_destination( writer ); pop_messages_from_queue( writer ); flush_coalescer( writer ); |