diff options
author | Max <msuraev@sysmocom.de> | 2016-06-23 13:14:02 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-06-23 20:00:33 +0000 |
commit | d826f1771cdada9009db599a9cf3882192bf0454 (patch) | |
tree | 79fb12f86e6b22bd356f9ddb1de5d75cfacec283 /src | |
parent | e0a7d9e2c220e5544ee8982c78851ff40ac425bc (diff) |
Fix potential segfault in msg_dequeue
Change-Id: I06e9c5ba3e00c73a4e52d2583ce3492f236275ce
Diffstat (limited to 'src')
-rw-r--r-- | src/msgb.c | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -101,9 +101,12 @@ struct msgb *msgb_dequeue(struct llist_head *queue) return NULL; lh = queue->next; - llist_del(lh); - - return llist_entry(lh, struct msgb, list); + + if (lh) { + llist_del(lh); + return llist_entry(lh, struct msgb, list); + } else + return NULL; } /*! \brief Re-set all message buffer pointers |