#35498 [Asn]: GD cannot open majority of jpeg images

From: Date: Thu, 01 Dec 2005 18:07:30 +0000
Subject: #35498 [Asn]: GD cannot open majority of jpeg images
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-89597@lists.php.net to get a copy of this message
ID: 35498 User updated by: paniemin at cc dot hut dot fi Reported By: paniemin at cc dot hut dot fi Status: Assigned Bug Type: GD related Operating System: Redhat Linux 7.3 PHP Version: 5.1.0 Assigned To: pajoye New Comment: Problem is in jpeg library but problems is that there isn't enought memory! But I haven't enabled memory limit. jmemmgr.c: in alloc_large function: hdr_ptr = (large_pool_ptr) jpeg_get_large(cinfo, sizeofobject + SIZEOF(large_pool_hdr)); if (hdr_ptr == NULL) out_of_memory(cinfo, 4); /* jpeg_get_large failed */ jpeg_get_large is just system specifig warepper for malloc call. The problem is in jpeg_start_decompress call from php GD library in gdImageCreateFromJpegCtx function (gd_jpeg.c). But when I try to run the php code in shell there is no problems. I quess that maybe some limits in apache that is runnig php in cgi mode. Previous Comments: ------------------------------------------------------------------------ [2005-12-01 12:29:42] tony2001@php.net Assigned to the maintainer. ------------------------------------------------------------------------ [2005-12-01 10:45:31] paniemin at cc dot hut dot fi First I tryed to us blunded but when that failed I tested external library. I will try to find the location of bug in php source later today when I will be back home. Btw, corect version is 5.1.0 (the public release). ------------------------------------------------------------------------ [2005-12-01 10:24:43] tony2001@php.net Try with the bundled GD, it's known to be less buggy and well maintained. ------------------------------------------------------------------------ [2005-12-01 01:18:25] paniemin at cc dot hut dot fi Description: ------------ I tryed to upgrade from 5.0.4 to 5.1. I use blunded GD version with freetype2, jpeg and png libraries. First I tried with old libraries that I used to build 5.0.4. Next I downloaded new version from freetype2. Next I downloaded GD 2.0.33 and tryed with it. I tried to find the problematic part but I failed to locate it outside php :( I found that imagecreatefromjpeg() fails to open jpeg files that older php version opened without problems. The failure to open seems to be random but about 60-70% images are 'corruped' for gd library. here is one of corrupted images: http://antin.net/imageshu/7363_1.jpg I will continue searching the real reason for this bug. I hope someone else can confirm same problem with 5.1 and GD. Reproduce code: --------------- $file = getFileForPerson($id, $imageNumber); $img = imagecreatefromjpeg($file); Expected result: ---------------- I excepted imagecreatefromjpeg to load the image so next steps in code can manipulate it. Actual result: -------------- Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: gd-jpeg: JPEG library reports unrecoverable error: in /home/customers/antin/public_html/huippu/ranki_dev.cgi on line 110 Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: '../imageshu/7363_1.jpg' is not a valid JPEG file in /home/customers/antin/public_html/huippu/ranki_dev.cgi on line 110 With GD 2.0.33 the first warning is skipped which seems natural for me. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35498&edit=1

« previous php.bugs (#89597) next »