Bug 1028914 - read_exif_data fail with 'Segmentation fault'
read_exif_data fail with 'Segmentation fault'
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: php (Show other bugs)
19
x86_64 Linux
unspecified Severity medium
: ---
: ---
Assigned To: Remi Collet
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-11-11 03:29 EST by Michael
Modified: 2013-12-01 04:36 EST (History)
3 users (show)

See Also:
Fixed In Version: php-5.5.6-1.fc19
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-11-23 22:53:41 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
PHP Bug Tracker 62523 None None None Never

  None (edit)
Description Michael 2013-11-11 03:29:01 EST
Description of problem:
Hello, 

I installed the php rpm from Fedora 19 and updated it also to the latest available fedora version:

[root@server ~]# php -v
PHP 5.5.5 (cli) (built: Oct 17 2013 06:05:14)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies

I've I now use read_exif_data to get the EXIF data it fails with 'Segmentation fault'. This happen only with jpg from my 'newer' camera. If I use a jpg from my 'old' camera it work. Here a working and a failing picture:

http://zerberus.amolymp.net/fotos/failing.jpg
http://zerberus.amolymp.net/fotos/working.jpg

After that I removed the RPM and compile php 5.5.5 from source. With this the read_exif_data work.

Version-Release number of selected component (if applicable):
[root@server ~]# php -v
PHP 5.5.5 (cli) (built: Oct 17 2013 06:05:14)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies

[root@server php-5.5.5]# uname  -a
Linux server.localdomain 3.11.4-201.fc19.x86_64 #1 SMP Thu Oct 10 14:11:18 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

How reproducible:
Test script:
---------------
<?php #filename rdexif.php

$exif_data = read_exif_data($argv[1]);
print_r($exif_data);

?>

run with php ./rdexif.php failing.jpg
run with php ./rdexif.php working.jpg

Actual results:
Segmentation fault

Expected results:
EXIF data

Additional info:
Comment 1 Remi Collet 2013-11-11 04:24:47 EST
I can reproduce:
(gdb) bt
#0  _zend_mm_free_int (heap=0x555555b82040, p=0x555555b822f8) at /usr/src/debug/php-5.5.5/Zend/zend_alloc.c:2104
#1  0x00007fffeab94d3e in exif_discard_imageinfo (ImageInfo=ImageInfo@entry=0x7fffffffa730) at /usr/src/debug/php-5.5.5/ext/exif/exif.c:3839
#2  0x00007fffeab999b1 in zif_exif_read_data (ht=<optimized out>, return_value=0x7ffff7fcb270, return_value_ptr=<optimized out>, this_ptr=<optimized out>, return_value_used=<optimized out>)
    at /usr/src/debug/php-5.5.5/ext/exif/exif.c:4083
#3  0x000055555577197b in dtrace_execute_internal (execute_data_ptr=<optimized out>, fci=<optimized out>, return_value_used=<optimized out>)
    at /usr/src/debug/php-5.5.5/Zend/zend_dtrace.c:97
#4  0x00005555558317e5 in zend_do_fcall_common_helper_SPEC (execute_data=<optimized out>) at /usr/src/debug/php-5.5.5/Zend/zend_vm_execute.h:552
#5  0x00005555557ab6f8 in execute_ex (execute_data=0x7ffff7f980e0) at /usr/src/debug/php-5.5.5/Zend/zend_vm_execute.h:363
#6  0x0000555555771879 in dtrace_execute_ex (execute_data=<optimized out>) at /usr/src/debug/php-5.5.5/Zend/zend_dtrace.c:73
#7  0x0000555555783350 in zend_execute_scripts (type=type@entry=8, retval=retval@entry=0x0, file_count=file_count@entry=3) at /usr/src/debug/php-5.5.5/Zend/zend.c:1320
#8  0x00005555557231b5 in php_execute_script (primary_file=primary_file@entry=0x7fffffffcf80) at /usr/src/debug/php-5.5.5/main/main.c:2489
#9  0x00005555558337f8 in do_cli (argc=3, argv=0x555555b81cf0) at /usr/src/debug/php-5.5.5/sapi/cli/php_cli.c:994
#10 0x000055555560dba0 in main (argc=3, argv=0x555555b81cf0) at /usr/src/debug/php-5.5.5/sapi/cli/php_cli.c:1378

This is upstream bug https://bugs.php.net/62523

The fix is include in upcoming version 5.5.6
Comment 2 Fedora Update System 2013-11-14 00:33:47 EST
php-5.5.6-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/php-5.5.6-1.fc20
Comment 3 Fedora Update System 2013-11-14 00:33:59 EST
php-5.5.6-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/php-5.5.6-1.fc19
Comment 4 Fedora Update System 2013-11-14 14:14:35 EST
Package php-5.5.6-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing php-5.5.6-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-21305/php-5.5.6-1.fc20
then log in and leave karma (feedback).
Comment 5 Fedora Update System 2013-11-23 22:53:41 EST
php-5.5.6-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 6 Fedora Update System 2013-12-01 04:36:22 EST
php-5.5.6-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.