ofpbuf: Make offset calculation more consistent.
authorJarno Rajahalme <jarno@ovn.org>
Mon, 7 Mar 2016 19:00:44 +0000 (11:00 -0800)
committerJarno Rajahalme <jarno@ovn.org>
Mon, 7 Mar 2016 19:00:44 +0000 (11:00 -0800)
Use the same method of offset calculation in
ofpbuf_clone_with_headroom() as in ofpbuf_resize__().

Signed-off-by: Jarno Rajahalme <jarno@ovn.org>
Acked-by: Joe Stringer <joe@ovn.org>
lib/ofpbuf.c

index 02c9d15..f050a84 100644 (file)
@@ -183,9 +183,9 @@ ofpbuf_clone_with_headroom(const struct ofpbuf *buffer, size_t headroom)
                                                  buffer->size,
                                                  headroom);
     if (buffer->header) {
-        ptrdiff_t data_delta = (char *)new_buffer->data - (char *)buffer->data;
+        ptrdiff_t data_delta = (char *) buffer->header - (char *) buffer->data;
 
-        new_buffer->header = (char *) buffer->header + data_delta;
+        new_buffer->header = (char *) new_buffer->data + data_delta;
     }
     new_buffer->msg = buffer->msg;