diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 2015-06-21 03:20:57 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 2015-06-21 03:20:57 +0000 |
commit | 8040328b2c5c3394666d460fdea4f3fabe13803f (patch) | |
tree | 251d80c6c7d064f5217556aba53e88e43e84319b /lib/libc/stdlib | |
parent | b8a006201d7f6e48eb06ef69042f09a1e6caddc9 (diff) |
Just return if nmemb is 0. Avoids a NULL dereference and is
consistent with the behavior of the other libc sort functions.
OK deraadt@
Diffstat (limited to 'lib/libc/stdlib')
-rw-r--r-- | lib/libc/stdlib/merge.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/libc/stdlib/merge.c b/lib/libc/stdlib/merge.c index 43ef8b08e26..d60317ce082 100644 --- a/lib/libc/stdlib/merge.c +++ b/lib/libc/stdlib/merge.c @@ -1,4 +1,4 @@ -/* $OpenBSD: merge.c,v 1.9 2011/03/06 00:55:38 deraadt Exp $ */ +/* $OpenBSD: merge.c,v 1.10 2015/06/21 03:20:56 millert Exp $ */ /*- * Copyright (c) 1992, 1993 * The Regents of the University of California. All rights reserved. @@ -101,6 +101,9 @@ mergesort(void *base, size_t nmemb, size_t size, return (-1); } + if (nmemb == 0) + return (0); + /* * XXX * Stupid subtraction for the Cray. |