com php-src: Fixed bug #72682 (exif_read_data() fai ls to read all data for some images): NEWS ext/exif/exif.c
| From: | Kalle Sommer Nielsen | Date: | Wed, 03 Aug 2016 15:33:18 +0000 |
| Subject: | com php-src: Fixed bug #72682 (exif_read_data() fai ls to read all data for some images): NEWS ext/exif/exif.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-93571@lists.php.net to get a copy of this message | ||
Commit: c6bd054b86c52948505be7409ad8d6488db062f6
Author: Kalle Sommer Nielsen <kalle@php.net> Wed, 3 Aug 2016 17:33:18 +0200
Parents: d40e5e7cbda7411b409dc2b0eced8433a5747ea6
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=c6bd054b86c52948505be7409ad8d6488db062f6
Log:
Fixed bug #72682 (exif_read_data() fails to read all data for some images)
This is fixed by adding DJI signatures to the MAKERNOTE and its supported tags, list is credits to
ExifTool documentation.
Bugs:
https://bugs.php.net/72682
Changed paths:
M NEWS
M ext/exif/exif.c
Diff:
diff --git a/NEWS b/NEWS
index 71cc1fb..e7e5307 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,8 @@ PHP NEWS
. Changed the way that EXIF processes MAKERNOTE data to not stop parsing
in case of an unknown signature. (Kalle, Remi)
. Fixed bug #72735 (Samsung picture thumb not read (zero size)). (Kalle)
+ . Fixed bug #72682 (exif_read_data() fails to read all data for some
+ images). (Kalle)
. Fixed Redhat bug #1362571 (PHP not returning full results for
exif_read_data function). (Kalle)
diff --git a/ext/exif/exif.c b/ext/exif/exif.c
index 50db48d..b340b51 100644
--- a/ext/exif/exif.c
+++ b/ext/exif/exif.c
@@ -1095,6 +1095,20 @@ static tag_info_array tag_table_VND_PANASONIC = {
TAG_TABLE_END
};
+static tag_info_array tag_table_VND_DJI = {
+ { 0x0001, "Make"},
+ { 0x0003, "SpeedX"},
+ { 0x0004, "SpeedY"},
+ { 0x0005, "SpeedZ"},
+ { 0x0006, "Pitch"},
+ { 0x0007, "Yaw"},
+ { 0x0008, "Roll"},
+ { 0x0009, "CameraPitch"},
+ { 0x000a, "CameraYaw"},
+ { 0x000b, "CameraRoll"},
+ TAG_TABLE_END
+};
+
typedef enum mn_byte_order_t {
MN_ORDER_INTEL = 0,
MN_ORDER_MOTOROLA = 1,
@@ -1127,7 +1141,8 @@ static const maker_note_type maker_note_array[] = {
{ tag_table_VND_NIKON_990, "NIKON", NULL, NULL,
0, 0, MN_ORDER_NORMAL, MN_OFFSET_NORMAL},
{ tag_table_VND_OLYMPUS, "OLYMPUS OPTICAL CO.,LTD", NULL,
"OLYMP\x00\x01\x00", 8, 8, MN_ORDER_NORMAL, MN_OFFSET_NORMAL},
{ tag_table_VND_SAMSUNG, "SAMSUNG", NULL, NULL,
0, 0, MN_ORDER_NORMAL, MN_OFFSET_NORMAL},
- { tag_table_VND_PANASONIC, "Panasonic", NULL,
"Panasonic\x00\x00\x00", 12, 12, MN_ORDER_NORMAL, MN_OFFSET_NORMAL}
+ { tag_table_VND_PANASONIC, "Panasonic", NULL,
"Panasonic\x00\x00\x00", 12, 12, MN_ORDER_NORMAL, MN_OFFSET_NORMAL},
+ { tag_table_VND_DJI, "DJI", NULL, NULL,
0, 0, MN_ORDER_NORMAL, MN_OFFSET_NORMAL}
};
/* }}} */