|
From: <bo...@us...> - 2008-10-21 07:03:41
|
Revision: 332
http://gearbox.svn.sourceforge.net/gearbox/?rev=332&view=rev
Author: borax00
Date: 2008-10-21 07:03:25 +0000 (Tue, 21 Oct 2008)
Log Message:
-----------
added a guard against infinite-loop caused by parsing parsing zero bytes.
Modified Paths:
--------------
gearbox/trunk/src/gbxsickacfr/gbxserialdeviceacfr/serialdevicehandler.cpp
Modified: gearbox/trunk/src/gbxsickacfr/gbxserialdeviceacfr/serialdevicehandler.cpp
===================================================================
--- gearbox/trunk/src/gbxsickacfr/gbxserialdeviceacfr/serialdevicehandler.cpp 2008-10-20 11:01:04 UTC (rev 331)
+++ gearbox/trunk/src/gbxsickacfr/gbxserialdeviceacfr/serialdevicehandler.cpp 2008-10-21 07:03:25 UTC (rev 332)
@@ -224,6 +224,14 @@
throw;
}
+ if ( numBytesParsed == 0 )
+ {
+ stringstream ss;
+ ss << "SerialDeviceHandler: Zero bytes were parsed, but buffer contains "<<buffer_.size()<<" bytes! (gotMessage="<<gotMessage<<"). responseParser_ shouldn't do this to us.";
+ tracer_.warning( ss.str() );
+ numBytesParsed = 1;
+ }
+
removeParsedData( buffer_, numBytesParsed );
if ( gotMessage )
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|