diff options
author | Adrian Lang <mail@adrianlang.de> | 2010-10-07 09:44:02 +0200 |
---|---|---|
committer | Adrian Lang <mail@adrianlang.de> | 2010-10-07 09:44:02 +0200 |
commit | d9c8ae6b7379d7b64d4817dbd5cca276b45a9dd5 (patch) | |
tree | 39c26d5412170ca4fa176962e60e9962dc643667 /inc/JpegMeta.php | |
parent | 2c053ed58376c6709596ab48fc40dceb90d4e89d (diff) | |
parent | 85dd53ceb1c2d9a7abe01b5ec50d155dcb142c59 (diff) | |
download | rpg-d9c8ae6b7379d7b64d4817dbd5cca276b45a9dd5.tar.gz rpg-d9c8ae6b7379d7b64d4817dbd5cca276b45a9dd5.tar.bz2 |
Merge branch 'master' into stable
Diffstat (limited to 'inc/JpegMeta.php')
-rw-r--r-- | inc/JpegMeta.php | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/inc/JpegMeta.php b/inc/JpegMeta.php index 98453131e..fa05f6859 100644 --- a/inc/JpegMeta.php +++ b/inc/JpegMeta.php @@ -1488,6 +1488,8 @@ class JpegMeta { * @author Hakan Sandell <hakan.sandell@mydata.se> */ function _parseXmpNode($values, &$i, &$meta) { + if ($values[$i]['type'] == 'close') return; + if ($values[$i]['type'] == 'complete') { // Simple Type property $meta = $values[$i]['value']; @@ -1501,14 +1503,16 @@ class JpegMeta { while ($values[++$i]['tag'] == 'rdf:li') { $this->_parseXmpNode($values, $i, $meta[]); } - $i++; // skip closing tag + $i++; // skip closing Bag/Seq tag } elseif ($values[$i]['tag'] == 'rdf:Alt') { // Language Alternative property, only the first (default) value is used - $i++; - $this->_parseXmpNode($values, $i, $meta); - while ($values[++$i]['tag'] != 'rdf:Alt'); - $i++; // skip closing tag + if ($values[$i]['type'] == 'open') { + $i++; + $this->_parseXmpNode($values, $i, $meta); + while ($values[++$i]['tag'] != 'rdf:Alt'); + $i++; // skip closing Alt tag + } } else { // Structure property |