From e577e4b3e646b0a296ce9bbd73f728cc3f92c20e Mon Sep 17 00:00:00 2001 From: Ken Thomases Date: Sun, 20 Oct 2013 23:55:47 -0500 Subject: [PATCH] libwine: Fix a potential write through a null pointer. (Clang). --- libs/wine/loader.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/libs/wine/loader.c b/libs/wine/loader.c index f59942d91e5..5c0192d429c 100644 --- a/libs/wine/loader.c +++ b/libs/wine/loader.c @@ -985,10 +985,13 @@ void *wine_dlopen( const char *filename, int flag, char *error, size_t errorsize { if (pread( fd, magic, 2, 0 ) == 2 && magic[0] == 'M' && magic[1] == 'Z') { - static const char msg[] = "MZ format"; - size_t len = min( errorsize, sizeof(msg) ); - memcpy( error, msg, len ); - error[len - 1] = 0; + if (error && errorsize) + { + static const char msg[] = "MZ format"; + size_t len = min( errorsize, sizeof(msg) ); + memcpy( error, msg, len ); + error[len - 1] = 0; + } close( fd ); return NULL; }