ID:               19366
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Feedback
+Status:           Verified
 Bug Type:         GD related
 Operating System: linux mandrake 2.4.19-7mdk
-PHP Version:      4.2.3
+PHP Version:      4.2.3, 4.3.0-dev
 New Comment:

Using latest CVS and the bundled GD library, I get this
segfault and backtrace:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (runnable)]
0x402b6678 in gdImageGetPixel (im=0x81e8ab8, x=50, y=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:828
828     }

#0  0x402b6678 in gdImageGetPixel (im=0x81e8ab8, x=50, y=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:828
#1  0x402b7b63 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1515
#2  0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#3  0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
#4  0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#5  0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
#6  0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#7  0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
#8  0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#9  0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
#10 0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#11 0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
#12 0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#13 0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
#14 0x402b7e71 in gdImageFill (im=0x81e8ab8, x=50, y=0, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1628
#15 0x402b7de1 in gdImageFill (im=0x81e8ab8, x=50, y=1, color=1) at
/usr/src/web/php/php4/ext/gd/libgd/gd.c:1606
.
.
.



Previous Comments:
------------------------------------------------------------------------

[2002-09-12 08:46:02] [EMAIL PROTECTED]

Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.



------------------------------------------------------------------------

[2002-09-12 01:55:30] [EMAIL PROTECTED]

Hello,

well, this will be more tricky, as it doesn't happen on my local
computer (win32), but the web-hosting server I use (and pay). I
exchanged several e-mails with the administrator of the web-hosting
service (www.pipni.cz) and it crashes:

mandrake 2.4.19-7mdk + PHP 4.2.3 completely, including apache
same on redhat
on slackware 8.1 + php 4.2.2 only the script crashed, not whole
server.

Now to the script. I got this script from a Czech PHP course and there
was a bug in the script. It creates a bitmap and then draws into the
bitmap. The bug is the bitmap is too small, the coordinates used in
draw and fill functions are beyond the size of the bitmap. And the fill
functions that get the starting point outside of bitmap let it go
down.

Here is the script:

<?php
$width = 50;
$height = 100;
$ImHandle = imagecreate($width,$height);
//Define colors
$MyBlue = imagecolorAllocate($ImHandle, 0, 0, 255);
$MyRed = imagecolorAllocate($ImHandle, 255, 0, 0);
$MyWhite = imagecolorAllocate($ImHandle, 255, 255, 255);
$MyBlack = imagecolorAllocate($ImHandle, 0, 0, 0);
//Draw
ImageFill($ImHandle,0,0,$MyBlack);
ImageLine($ImHandle,20,20,180,20,$MyWhite);
ImageLine($ImHandle,20,20,20,70,$MyBlue);
ImageLine($ImHandle,20,70,180,70,$MyRed);
ImageLine($ImHandle,180,20,180,45,$MyWhite);
ImageLine($ImHandle,180,70,180,45,$MyRed);
ImageLine($ImHandle,20,20,100,45,$MyBlue);
ImageLine($ImHandle,20,70,100,45,$MyBlue);
ImageLine($ImHandle,100,45,180,45,$MyRed);
ImageFill($ImHandle,21,45,$MyBlue);
ImageFill($ImHandle,100,69,$MyRed);
ImageFill($ImHandle,100,21,$MyWhite);
ImageString($ImHandle,4,40,75,"Czech Republic",$MyWhite);
// Send to browser
Header("Content-type: image/PNG");
ImagePNG($ImHandle);
//Free resources
imagedestroy($ImHandle);
?>

Take care

Honza

------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=19366&edit=1

Reply via email to