Update of /cvsroot/cppunit/cppunit2/src/opentest
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12663/src/opentest
Modified Files:
sharedmemorytransport.cpp
Log Message:
* fixed bad 'Byte' typedef causing bad memory access.
Index: sharedmemorytransport.cpp
===================================================================
RCS file: /cvsroot/cppunit/cppunit2/src/opentest/sharedmemorytransport.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** sharedmemorytransport.cpp 8 Mar 2006 22:01:20 -0000 1.8
--- sharedmemorytransport.cpp 10 Mar 2006 08:30:33 -0000 1.9
***************
*** 200,205 ****
{
public:
typedef DWORD Pos;
- typedef unsigned char *Byte;
SharedMemoryTransportImpl( const SharedMemoryConfig &config );
--- 200,205 ----
{
public:
+ typedef unsigned char Byte;
typedef DWORD Pos;
SharedMemoryTransportImpl( const SharedMemoryConfig &config );
***************
*** 358,362 ****
CPPTL_ASSERT_MESSAGE( nameLength_ < sizeof(nameBuffer_)-1,
"buffer overflow" );
! transportName_ = nameLength_;
createSharedMemoryRegion();
--- 358,362 ----
CPPTL_ASSERT_MESSAGE( nameLength_ < sizeof(nameBuffer_)-1,
"buffer overflow" );
! transportName_ = nameBuffer_;
createSharedMemoryRegion();
***************
*** 445,455 ****
SharedMemoryTransportImpl::openSharedMemoryRegion()
{
! hSharedMemory_.reset( ::OpenFileMapping( FILE_MAP_ALL_ACCESS,
! TRUE,
! nameBuffer_ ) );
! if ( hSharedMemory_ == 0 )
! throw SharedMemoryError( "Failed to open specified shared memory region." );
! setSharedMemoryRegion();
}
--- 445,462 ----
SharedMemoryTransportImpl::openSharedMemoryRegion()
{
! if ( config_.singleProcessMasterTransport_ )
! {
! shared_ = config_.singleProcessMasterTransport_->impl_->shared_;
! }
! else
! {
! hSharedMemory_.reset( ::OpenFileMapping( FILE_MAP_ALL_ACCESS,
! TRUE,
! nameBuffer_ ) );
! if ( hSharedMemory_ == 0 )
! throw SharedMemoryError( "Failed to open specified shared memory region." );
! setSharedMemoryRegion();
! }
}
***************
*** 506,509 ****
--- 513,517 ----
buffer.data_ += shared_->circularBuffers_[ 0 ].size_;
buffer.processedLength_ = 0;
+ buffer.messageLength_ = 0;
}
nameBuffer_[nameLength_] = 0;
|