summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlauber Costa <glommer@cloudius-systems.com>2014-04-08 14:47:50 +0400
committerantirez <antirez@gmail.com>2014-04-23 15:35:07 +0200
commit0c8fdb349ce409d35b2511a884330b303ed0b435 (patch)
tree3a43dcf44c2cd4867f2cce8d5b2631e2fc098253
parent19ac9af09f9621f8d41472d047c101c761ceb666 (diff)
downloadredis-0c8fdb349ce409d35b2511a884330b303ed0b435.tar.gz
fix null pointer access with no file pointer
I happen to be working on a system that lacks urandom. While the code does try to handle this case and artificially create some bytes if the file pointer is empty, it does try to close it unconditionally, leading to a segfault.
-rw-r--r--src/util.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/util.c b/src/util.c
index 37534dfb9..664c82b80 100644
--- a/src/util.c
+++ b/src/util.c
@@ -402,7 +402,7 @@ void getRandomHexChars(char *p, unsigned int len) {
/* Turn it into hex digits taking just 4 bits out of 8 for every byte. */
for (j = 0; j < len; j++)
p[j] = charset[p[j] & 0x0F];
- fclose(fp);
+ if (fp) fclose(fp);
}
/* Given the filename, return the absolute path as an SDS string, or NULL