# HG changeset patch # User Matti Hamalainen # Date 1586182982 -10800 # Node ID 8fd5c850f9215287902d594c078cd37b91c3bdbc # Parent b1fc8a908eac2af9341de667400e52cbef30e723 Minor cleanup to XMP/EXIF fetching. diff -r b1fc8a908eac -r 8fd5c850f921 mgtool.php --- a/mgtool.php Sat Apr 04 17:52:42 2020 +0300 +++ b/mgtool.php Mon Apr 06 17:23:02 2020 +0300 @@ -251,7 +251,7 @@ // Read XMP data block from given file // .. it's a horrible hack. // -function mgReadXMPData($filename, $xmpBlockSize = 1024*64) +function mgReadXMPFromRAWData($filename, $xmpBlockSize = 1024*64) { if (($fh = @fopen($filename, 'rb')) === FALSE) return FALSE; @@ -966,19 +966,17 @@ mgNeedUpdate($galEntry, "mtime", filemtime($capFilename))) $updFlags |= GUPD_CAPTION; - // Check for XMP info - // TODO XXX: Perhaps support XMP sidecar files - if (($updFlags & GUPD_EXIF_INFO) && - ($xmpStr = mgReadXMPData($efilename)) !== FALSE && - ($xmp = mgParseXMPData($xmpStr)) !== FALSE) - { - foreach ($galExifConversions as $conv) - mgCopyEntryData($edata, $xmp, $conv[GEC_TYPE], $conv[GEC_NAME], $conv[GEC_FIELDS]); - } - - // Check for EXIF info + // Check for EXIF and XMP info if ($updFlags & GUPD_EXIF_INFO) { + // TODO XXX: Perhaps support XMP sidecar files + if (($xmpStr = mgReadXMPFromRAWData($efilename)) !== FALSE && + ($xmp = mgParseXMPData($xmpStr)) !== FALSE) + { + foreach ($galExifConversions as $conv) + mgCopyEntryData($edata, $xmp, $conv[GEC_TYPE], $conv[GEC_NAME], $conv[GEC_FIELDS]); + } + if (($exif = @exif_read_data($efilename)) !== FALSE) { echo "%";