From: Pádraig Brady
Date: Wed, 24 Jun 2015 18:08:08 +0000 (+0100) Subject: savedir: avoid undefined behavior in qsort call X-Git-Tag: v1.0~7033 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=791147f316756a72fb6fea77fdf49e5fcd41ec00;p=gnulib.git savedir: avoid undefined behavior in qsort call GCC 5.1.1 -fsanitize=undefined with glibc 2.21 is returning: "runtime error: null pointer passed as argument 1, which is declared to never be null" * lib/savedir.c (streamsavedir): Avoid the call with no entries. --- diff --git a/ChangeLog b/ChangeLog index 1a8d095cf3..ef313402c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2015-06-24 Pádraig Brady
+ + savedir: avoid undefined behavior in qsort call + GCC 5.1.1 -fsanitize=undefined with glibc 2.21 is returning: + "runtime error: null pointer passed as argument 1, + which is declared to never be null" + * lib/savedir.c (streamsavedir): Avoid the call with no entries. + 2015-06-24 Pádraig Brady
userspec: avoid undefined behavior in gettext call diff --git a/lib/savedir.c b/lib/savedir.c index 3af555ac3e..61b0fa3ca8 100644 --- a/lib/savedir.c +++ b/lib/savedir.c @@ -161,7 +161,8 @@ streamsavedir (DIR *dirp, enum savedir_option option) { size_t i; - qsort (entries, entries_used, sizeof *entries, cmp); + if (entries_used) + qsort (entries, entries_used, sizeof *entries, cmp); name_space = xmalloc (used + 1); used = 0; for (i = 0; i < entries_used; i++)