diff options
Diffstat (limited to 'app-arch/bzip2/files/bzip2-1.0.2-NULL-ptr-check.patch')
-rw-r--r-- | app-arch/bzip2/files/bzip2-1.0.2-NULL-ptr-check.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/app-arch/bzip2/files/bzip2-1.0.2-NULL-ptr-check.patch b/app-arch/bzip2/files/bzip2-1.0.2-NULL-ptr-check.patch new file mode 100644 index 000000000000..e35080f86db8 --- /dev/null +++ b/app-arch/bzip2/files/bzip2-1.0.2-NULL-ptr-check.patch @@ -0,0 +1,27 @@ +Mihai Limbasan writes: +BZ2_bzclose fails to perform a NULL pointer check before actually +using the passed BZFILE * argument. The NULL check *is* performed but +only after the argument is used for the first time, resulting in a +potential NULL pointer dereference. + +http://bugs.gentoo.org/show_bug.cgi?id=75305 + +Sent upstream but no feedback thus far :( +diff -Naur bzip2-1.0.2-orig/bzlib.c bzip2-1.0.2/bzlib.c +--- bzip2-1.0.2-orig/bzlib.c 2002-01-05 02:48:41.000000000 +0200 ++++ bzip2-1.0.2/bzlib.c 2004-12-22 15:12:52.824593032 +0200 +@@ -1536,9 +1536,12 @@ + void BZ_API(BZ2_bzclose) (BZFILE* b) + { + int bzerr; +- FILE *fp = ((bzFile *)b)->handle; +- ++ FILE *fp; ++ + if (b==NULL) {return;} ++ ++ fp = ((bzFile *)b)->handle; ++ + if(((bzFile*)b)->writing){ + BZ2_bzWriteClose(&bzerr,b,0,NULL,NULL); + if(bzerr != BZ_OK){ |