From e26a6b81a2b489a177e5916c54a3a9c59edd3a12 Mon Sep 17 00:00:00 2001 From: ꦌ ꦫꦶ ꦏ꧀ꦦꦿ ꦧ ꦮ ꦑ ꦩ ꦭ꧀ Date: Mon, 4 Nov 2019 19:14:47 +0700 Subject: Test the bsearch result first and only get content when pointer isn't NULL --- client.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/client.c b/client.c index 641db88..d60c8e1 100644 --- a/client.c +++ b/client.c @@ -80,9 +80,11 @@ void icclient_order(icclient_ord_order **orderptr, const char *sku qsort(items, order->nitems, sizeof(icclient_ord_item *), itemcmp); icclient_ord_item *key_item = malloc(sizeof(icclient_ord_item)); key_item->product = product; - item = *(icclient_ord_item **)bsearch(&key_item, items + icclient_ord_item **itemptr = bsearch(&key_item, items , order->nitems, sizeof(icclient_ord_item *) , itemcmp); + if (itemptr) + item = *itemptr; free(key_item); } else { *orderptr = malloc(sizeof(icclient_ord_order)); -- cgit v1.3