]> granicus.if.org Git - php/commitdiff
-MFB, Be paranoid and dont allow multiplication with zero
authorMattias Bengtsson <mattias@php.net>
Tue, 23 Oct 2007 01:58:41 +0000 (01:58 +0000)
committerMattias Bengtsson <mattias@php.net>
Tue, 23 Oct 2007 01:58:41 +0000 (01:58 +0000)
ext/gd/libgd/gd_security.c

index a5fea34c147ff69f2d9ecd32145c03dbac144b31..897c302539d5b138faa966917fd168cc813236de 100644 (file)
 
 int overflow2(int a, int b)
 {
-       if(a < 0 || b < 0) {
-               php_gd_error("gd warning: one parameter to a memory allocation multiplication is negative, failing operation gracefully\n");
+       if(a <= 0 || b <= 0) {
+               php_gd_error("gd warning: one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully\n");
                return 1;
        }
-       if(b == 0)
-               return 0;
        if(a > INT_MAX / b) {
                php_gd_error("gd warning: product of memory allocation multiplication would exceed INT_MAX, failing operation gracefully\n");
                return 1;