[Cppunit-cvs] cppunit2/src/opentest sharedmemorytransport.cpp,1.9,1.10
Brought to you by:
blep
From: Baptiste L. <bl...@us...> - 2006-03-10 22:05:55
|
Update of /cvsroot/cppunit/cppunit2/src/opentest In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24218/src/opentest Modified Files: sharedmemorytransport.cpp Log Message: * better event logging * fixed bug (incorrect message length when sending second message) * fixed bug: event not reseted after flushing messageToSent queue. Index: sharedmemorytransport.cpp =================================================================== RCS file: /cvsroot/cppunit/cppunit2/src/opentest/sharedmemorytransport.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** sharedmemorytransport.cpp 10 Mar 2006 08:30:33 -0000 1.9 --- sharedmemorytransport.cpp 10 Mar 2006 22:05:46 -0000 1.10 *************** *** 316,319 **** --- 316,320 ---- void threadMain(); void prepareWaitObjects(); + const char *getWaitObjectName( DWORD index ); void prepareMessageToSend(); void readAndSendPendingData(); *************** *** 608,612 **** INFINITE ); event -= WAIT_OBJECT_0; - OPENTEST_SHMEM_LOG( "Event signaled: %d", event ); if ( event <0 || event > waitObjects_.size() ) { --- 609,612 ---- *************** *** 621,624 **** --- 621,627 ---- break; // timeout or abandonned event => child process died. } + + OPENTEST_SHMEM_LOG( "Event signaled: %s (event#%d)", getWaitObjectName(event), event ); + if ( waitObjects_[event] == stopEvent_.get() ) { *************** *** 656,659 **** --- 659,672 ---- + const char * + SharedMemoryTransportImpl::getWaitObjectName( DWORD index ) + { + CPPTL_ASSERT_MESSAGE( index < 4, "Bad event index" ); + static const char *names[] = { "stopEvent_", "sendMessageEvent_", + "buffers_[0].event_", "buffers_[1].event_" }; + return names[index]; + } + + void SharedMemoryTransportImpl::prepareMessageToSend() *************** *** 667,670 **** --- 680,684 ---- CppTL::Mutex::ScopedLockGuard guard( messagesToSendLock_ ); messagesToSend_.swap( messages ); + sendMessageEvent_.reset(); } OPENTEST_SHMEM_LOG( "Messaging thread released messagesToSendLock_" ); *************** *** 690,693 **** --- 704,708 ---- OPENTEST_SHMEM_LOG( "Acquiring shared_->mutex_" ); ScopedMutexLock guard( shared_->mutex_ ); + OPENTEST_SHMEM_LOG( "Acquired shared_->mutex_" ); readPendingData(); writePendingData(); *************** *** 767,772 **** case bsSize: { ! if ( buffer.messageLength_ == 0 ) ! buffer.messageLength_ = buffer.stream_.packets().getFirstMessageLength(); Pos toWrite = CPPTL_MIN( available, --- 782,786 ---- case bsSize: { ! buffer.messageLength_ = buffer.stream_.packets().getFirstMessageLength(); Pos toWrite = CPPTL_MIN( available, |