Bug #64739 [Csd]: Invalid Title and Author data returned

From: Date: Sat, 22 Jul 2017 13:51:08 +0000
Subject: Bug #64739 [Csd]: Invalid Title and Author data returned
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-210190@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=64739&edit=1

 ID:                 64739
 User updated by:    php-qa at sebastianmendel dot de
 Reported by:        php-qa at sebastianmendel dot de
 Summary:            Invalid Title and Author data returned
 Status:             Closed
 Type:               Bug
 Package:            EXIF related
 Operating System:   Linux
 PHP Version:        5.4.14
 Assigned To:        kalle
 Block user comment: N
 Private report:     N

 New Comment:

The problem is you never know which encoding is used and if you process a lot of pictures which are
always changing - in a CMS - you will always loose.

Ok, so at least the manual page should have a hint about this.


Previous Comments:
------------------------------------------------------------------------
[2017-07-21 19:41:35] kalle@php.net

I have given this some thought and attempts and trying to solve this in an automatic behavior, but
its almost impossible with the current implementation of EXIF in ext/exif. Therefore I recommend to
change the ini setting if the image contains another byte order than that of the default charset
used to decode it with.

TL;DR for your image you would therefore do:
exif.decode_unicode_motorola=UCS-2LE

Apologies again, but I don't see any other clear way to go about this

------------------------------------------------------------------------
[2017-07-14 01:37:50] kalle@php.net

I debugged it a little further, it seems that internally ext/exif detects the image byte order as
Motorola, which causes it to use a wrong encoding to process the tags (from the WINXP section).

A temporary hack can be done by modifying the exif.decode_unicode_motorola ini directive:

[exif]
exif.decode_unicode_motorola=UCS-2LE

(It defaults to UCS-2BE)

I'm gonna look into possible approaches for solving this

------------------------------------------------------------------------
[2017-07-13 23:15:01] kalle@php.net

Thank you Sebastian, from some quick debugging it seems that the Motorola/Intel offset is poorly
detected, causing it to read it as such

------------------------------------------------------------------------
[2017-07-13 12:35:34] php-qa at sebastianmendel dot de

link http://sebastianmendel.de/php/exif_segmentation_fault/test.jpg
restored

------------------------------------------------------------------------
[2017-07-07 10:28:15] kalle@php.net

Hi, could you please re-upload the image somewhere so I can use it for testing?

Thanks

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


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

    https://bugs.php.net/bug.php?id=64739


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


Thread (10 messages)

« previous php.bugs (#210190) next »