fix vlib_buffer_chain_compress assert in debug 35/16435/4
authorKlement Sekera <ksekera@cisco.com>
Tue, 11 Dec 2018 15:55:33 +0000 (16:55 +0100)
committerDave Barach <openvpp@barachs.net>
Thu, 13 Dec 2018 14:42:14 +0000 (14:42 +0000)
replace vlib_buffer_advance with its code to work around assert

Change-Id: I6e332527f5e0c10d23305b6fc2e837d8b4f99e78
Signed-off-by: Klement Sekera <ksekera@cisco.com>
src/vlib/buffer_funcs.h

index e8ccc86..c201fd6 100644 (file)
@@ -1244,7 +1244,8 @@ vlib_buffer_chain_compress (vlib_main_t * vm,
                        first->current_length,
                        vlib_buffer_get_current (second), amount_to_copy);
       first->current_length += amount_to_copy;
-      vlib_buffer_advance (second, amount_to_copy);
+      second->current_data += amount_to_copy;
+      second->current_length -= amount_to_copy;
       if (first->flags & VLIB_BUFFER_TOTAL_LENGTH_VALID)
        {
          first->total_length_not_including_first_buffer -= amount_to_copy;