diff options
author | marha <marha@users.sourceforge.net> | 2011-02-03 09:44:39 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2011-02-03 09:44:39 +0000 |
commit | 83a4fe0dc71aafbef11477b284abe530d3877556 (patch) | |
tree | 527158f28d9a46d1e9cc83b6c5fa6e8fbed956eb /libX11/src/Xrm.c | |
parent | 60107fb2d201703dba061622101dafc139559bca (diff) | |
download | vcxsrv-83a4fe0dc71aafbef11477b284abe530d3877556.tar.gz vcxsrv-83a4fe0dc71aafbef11477b284abe530d3877556.tar.bz2 vcxsrv-83a4fe0dc71aafbef11477b284abe530d3877556.zip |
libXext xserver libXau libX11 pixman mesa git update 3 Feb 2011
Diffstat (limited to 'libX11/src/Xrm.c')
-rw-r--r-- | libX11/src/Xrm.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/libX11/src/Xrm.c b/libX11/src/Xrm.c index 21f0af3c0..fbc8ad293 100644 --- a/libX11/src/Xrm.c +++ b/libX11/src/Xrm.c @@ -842,8 +842,10 @@ static void PutEntry( nprev = NodeBuckets(table); \ } else { \ table->leaf = 1; \ - if (!(nprev = (NTable *)Xmalloc(sizeof(VEntry *)))) \ + if (!(nprev = (NTable *)Xmalloc(sizeof(VEntry *)))) {\ + Xfree(table); \ return; \ + } \ ((LTable)table)->buckets = (VEntry *)nprev; \ } \ *nprev = (NTable)NULL; \ @@ -1594,6 +1596,12 @@ ReadInFile(_Xconst char *filename) */ GetSizeOfFile(fd, size); + /* There might have been a problem trying to stat a file */ + if (size == -1) { + close (fd); + return (char *)NULL; + } + if (!(filebuf = Xmalloc(size + 1))) { /* leave room for '\0' */ close(fd); return (char *)NULL; |