From abf272eedb9aa23e9bf21c74028a278787e596cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Thu, 5 Nov 2009 19:40:52 +0000 Subject: [PATCH] * Cleanup, looks better this way. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33909 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp b/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp index e096539c16..2b30a085d5 100644 --- a/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp +++ b/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp @@ -330,6 +330,7 @@ FragmentPacket::AddFragment(uint16 start, uint16 end, net_buffer* buffer, return B_OK; } else if (next != NULL && next->fragment.start == end) { + net_buffer* afterNext = (net_buffer*)next->link.next; fFragments.Remove(next); buffer->fragment.start = start; @@ -339,18 +340,11 @@ FragmentPacket::AddFragment(uint16 start, uint16 end, net_buffer* buffer, TRACE(" merge next: %s", strerror(status)); if (status != B_OK) { // Insert "next" at its previous position - if (previous != NULL) - fFragments.Insert((net_buffer*)previous->link.next, next); - else - fFragments.Insert(next); - + fFragments.Insert(afterNext, next); return status; } - if (previous != NULL) - fFragments.Insert((net_buffer*)previous->link.next, buffer); - else - fFragments.Insert(buffer); + fFragments.Insert(afterNext, buffer); // cut down existing hole fBytesLeft -= end - start;