#39780 [Ana->Fbk]: Fatal error reported for recoverable error
| From: | pajoye@php.net | Date: | Sat, 09 Dec 2006 12:05:48 +0000 |
| Subject: | #39780 [Ana->Fbk]: Fatal error reported for recoverable error | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-106136@lists.php.net to get a copy of this message | ||
ID: 39780
Updated by: pajoye@php.net
Reported By: pz at mysqlperformanceblog dot com
-Status: Analyzed
+Status: Feedback
Bug Type: GD related
Operating System: Linux
PHP Version: 5.2.0
Assigned To: pajoye
New Comment:
Please try with this patch (against 5.2 cvs):
http://pecl.php.net/~pierre/gdphpbug39780.txt
It raises (yes many ;) warnings instead of fatal errors.
Ilia, is it ok for 5.2?
Previous Comments:
------------------------------------------------------------------------
[2006-12-09 11:59:59] pajoye@php.net
Ok, I found the problem.
It requires to add more jmp points in the png implementation. We have
only one now, forcing us to bail out immediately if an error occurred
after the image initialization (when the png headers are correct but
not the data/CRC).
I'm not sure if I can make it for 5.2.x but 6.x will return false.
------------------------------------------------------------------------
[2006-12-09 11:09:57] pajoye@php.net
"Sure image is invalid. This is not the point. "
My point is to have the relelevant informations in the report instead
of letting us wondering what you are trying to do or achieve. And it is
a valid requirement.
"The function is specified as it ether returns image or FALSE on
error."
As I just said, I have to test further to see if it is safe to continue
the script execution.
------------------------------------------------------------------------
[2006-12-09 09:59:47] pz at mysqlperformanceblog dot com
Sure image is invalid. This is not the point.
The function is specified as it ether returns image or FALSE on error.
If it also can in case of error terminate script execution or format
the hard drive it is better to be specified in docs :)
Now regarding what I provide - the name of the file does not matter in
this case as image is created from memory buffer. I just gave you the
real image on which my thumbnail generation script failed.
Out of few millions of images processed many were malformed etc but in
most cases PHP handles it correctly by reporting FALSE and printing
appropriate warning. So at least this behavior is inconsistent.
------------------------------------------------------------------------
[2006-12-08 21:47:30] pajoye@php.net
The image is invalid. Either the buffer is incomplete or the CRC is
wrong. You can try with different image viewers, the lower part will
miss, more or less depending on how tolerant is the reader.
It is also important to tell us directly what you provide, like a png
named as gif, it minimizes the time we need to test or analyze your
problem. If you used imagecreatefromgif it will simply fail, so yes,
which functions you use to open this image is important.
I will check if returning false is a safe choice. It should be but I
need to test it first.
------------------------------------------------------------------------
[2006-12-08 20:17:42] pz at mysqlperformanceblog dot com
Here is the copy of the image:
http://www.mysqlperformanceblog.com/files/misc/1.gif
It is actually PNG image even if it has gif extension.
Regarding what function I should use this is not the point - I created
simple test case to illustrate problem. In the real script it is used
completely different way.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/39780
--
Edit this bug report at http://bugs.php.net/?id=39780&edit=1