|
Message-ID: <20170305220334.GH2082@port70.net> Date: Sun, 5 Mar 2017 23:03:35 +0100 From: Szabolcs Nagy <nsz@...t70.net> To: musl@...ts.openwall.com Subject: [PATCH] fix lsearch and lfind to pass key as first arg to the compar callback this is not a conformance issue as posix does not specify the argument order, but the order is specified for bsearch and some systems document the order for lsearch consistently (openbsd). since there were two indpendent reports of this issue it's better to use the more widely expected argument order. --- in both reported cases upstream got fixed, but i think it is worth changing anyway. src/search/lsearch.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/search/lsearch.c b/src/search/lsearch.c index 63f31922..5eb5cc2b 100644 --- a/src/search/lsearch.c +++ b/src/search/lsearch.c @@ -9,7 +9,7 @@ void *lsearch(const void *key, void *base, size_t *nelp, size_t width, size_t i; for (i = 0; i < n; i++) - if (compar(p[i], key) == 0) + if (compar(key, p[i]) == 0) return p[i]; *nelp = n+1; return memcpy(p[n], key, width); @@ -23,7 +23,7 @@ void *lfind(const void *key, const void *base, size_t *nelp, size_t i; for (i = 0; i < n; i++) - if (compar(p[i], key) == 0) + if (compar(key, p[i]) == 0) return p[i]; return 0; } -- 2.11.0
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.