File bogofilter-r6973-base64-decoder-heap-corruption-fix.patch of Package bogofilter

Index: src/iconvert.c
===================================================================
--- src/iconvert.c	(revision 6972)
+++ src/iconvert.c	(revision 6973)
@@ -76,7 +76,7 @@
 	outbuf = (char *)dst->t.u.text + dst->t.leng;
 	outbytesleft = dst->size - dst->read - dst->t.leng;
 
-	if (outbytesleft == 0)
+	if (outbytesleft <= 0)
 	    break;
 
 	/*
@@ -141,6 +141,10 @@
 	    switch (err) {
 	    case EILSEQ:		/* invalid multibyte sequence */
 	    case EINVAL:		/* incomplete multibyte sequence */
+		if(outbytesleft <= 0) {
+                    done = true;
+                    break;
+		}
 		/* copy 1 byte (or substitute a '?') */
 		if (!replace_nonascii_characters)
 		    *outbuf = *inbuf;
openSUSE Build Service is sponsored by