From 01e4d23bd719600c70b5ed78dacce52ca19efcaf Mon Sep 17 00:00:00 2001
From: jsg <>
Date: Wed, 15 Feb 2017 12:31:57 +0000
Subject: Add a NULL test to wrterror() to avoid a NULL deref when called from
 a free() error path.

ok otto@
---
 src/lib/libc/stdlib/malloc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/libc/stdlib/malloc.c b/src/lib/libc/stdlib/malloc.c
index adbb166880..0b071e6743 100644
--- a/src/lib/libc/stdlib/malloc.c
+++ b/src/lib/libc/stdlib/malloc.c
@@ -1,4 +1,4 @@
-/*	$OpenBSD: malloc.c,v 1.214 2017/02/02 10:35:34 otto Exp $	*/
+/*	$OpenBSD: malloc.c,v 1.215 2017/02/15 12:31:57 jsg Exp $	*/
 /*
  * Copyright (c) 2008, 2010, 2011, 2016 Otto Moerbeek <otto@drijf.net>
  * Copyright (c) 2012 Matthew Dempsky <matthew@openbsd.org>
@@ -278,7 +278,7 @@ wrterror(struct dir_info *d, char *msg, ...)
 
 	iov[0].iov_base = pidbuf;
 	snprintf(pidbuf, sizeof(pidbuf), "%s(%d) in %s(): ", __progname,
-	    getpid(), d->func ? d->func : "unknown");
+	    getpid(), (d != NULL && d->func) ? d->func : "unknown");
 	iov[0].iov_len = strlen(pidbuf);
 	iov[1].iov_base = buf;
 	va_start(ap, msg);
-- 
cgit v1.2.3-55-g6feb