Fixed postconditions, the equal had wrong pointer interator
authorGuilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
Sat, 27 Aug 2011 01:21:35 +0000 (22:21 -0300)
committerGuilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
Sat, 27 Aug 2011 01:21:35 +0000 (22:21 -0300)
src/host/messagepayload.cpp

index f988ac6..605d4cf 100644 (file)
@@ -157,8 +157,12 @@ void MessagePayload::append(
         PayloadSizeInBytes = new_payload_size_in_bytes;
 
         BOOST_ASSERT( PayloadSizeInBytes == ( old_payload_size_in_bytes + extra_payload_size_in_bytes ) );
-        BOOST_ASSERT( equal( Payload.get(), Payload.get() + old_payload_size_in_bytes, old_payload_data ) );
-        BOOST_ASSERT( equal( Payload.get() + old_payload_size_in_bytes, Payload.get() + extra_payload_size_in_bytes, extra_payload_data ) );
+        uint8_t *original_data_begin = Payload.get();
+        uint8_t *original_data_end = Payload.get() + old_payload_size_in_bytes;
+        BOOST_ASSERT( equal( original_data_begin, original_data_end, old_payload_data ) );
+        uint8_t *extra_data_begin = Payload.get() + old_payload_size_in_bytes;
+        uint8_t *extra_data_end = Payload.get() + old_payload_size_in_bytes + extra_payload_size_in_bytes;
+        BOOST_ASSERT( equal( extra_data_begin, extra_data_end, extra_payload_data ) );
     }
 }