9
0
Fork 0

gtp/queue/queue_seqdel(): fix element check which was always true

Fix an apparent typo that prevented queue iteration to find the correct item to
be removed. Instead, the first item was always returned. Calling code has been
analyzed to find that mostly this fault is not visible, since usually, the
first item is indeed the correct item to be returned. See mail thread
http://lists.osmocom.org/pipermail/osmocom-net-gprs/2016-June/000618.html
Date: Wed Jun 1 11:51:38 UTC 2016
Subject: "[PATCH] gtp/queue/queue_seqdel(): fix element check which always was true"
This commit is contained in:
Alexander Couzens 2016-05-31 14:42:38 +02:00 committed by Neels Hofmeyr
parent cc077ae0bc
commit 86540de7f3
1 changed files with 1 additions and 2 deletions

View File

@ -105,8 +105,7 @@ static int queue_seqdel(struct queue_t *queue, struct qmsg_t *qmsg)
printf("Begin queue_seqdel seq = %d\n", (int)qmsg->seq);
for (qmsg2 = queue->hashseq[hash]; qmsg2; qmsg2 = qmsg2->seqnext) {
/* FIXME: this is always true !?! */
if (qmsg == qmsg) {
if (qmsg == qmsg2) {
if (!qmsg_prev)
queue->hashseq[hash] = qmsg2->seqnext;
else