From 8040328b2c5c3394666d460fdea4f3fabe13803f Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Sun, 21 Jun 2015 03:20:57 +0000 Subject: Just return if nmemb is 0. Avoids a NULL dereference and is consistent with the behavior of the other libc sort functions. OK deraadt@ --- lib/libc/stdlib/merge.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lib/libc/stdlib') 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. -- cgit v1.2.3