aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/uipc_mbuf.c
diff options
context:
space:
mode:
authorSam Leffler <sam@FreeBSD.org>2005-02-24 00:40:33 +0000
committerSam Leffler <sam@FreeBSD.org>2005-02-24 00:40:33 +0000
commit59d8b3100291c8b462e8e1700e110a86ea354cf0 (patch)
treedd38613010cf85c1dfc97610e3619716d2862419 /sys/kern/uipc_mbuf.c
parent0fa17d320d4a4d2c1a5006960f9e05a2ccb83470 (diff)
downloadsrc-59d8b3100291c8b462e8e1700e110a86ea354cf0.tar.gz
src-59d8b3100291c8b462e8e1700e110a86ea354cf0.zip
Notes
Diffstat (limited to 'sys/kern/uipc_mbuf.c')
-rw-r--r--sys/kern/uipc_mbuf.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/uipc_mbuf.c b/sys/kern/uipc_mbuf.c
index aece312381c7..4d832a8f0711 100644
--- a/sys/kern/uipc_mbuf.c
+++ b/sys/kern/uipc_mbuf.c
@@ -691,12 +691,14 @@ m_adj(struct mbuf *mp, int req_len)
for (; m; m = m->m_next) {
if (m->m_len >= count) {
m->m_len = count;
+ if (m->m_next != NULL) {
+ m_freem(m->m_next);
+ m->m_next = NULL;
+ }
break;
}
count -= m->m_len;
}
- while (m->m_next)
- (m = m->m_next) ->m_len = 0;
}
}