Merge "Update wikimedia/wrappedstring to v3.0.0"
[lhc/web/wiklou.git] / includes / media / FormatMetadata.php
index 6661965..2a8b375 100644 (file)
@@ -20,7 +20,7 @@
  * @ingroup Media
  * @author Ævar Arnfjörð Bjarmason <avarab@gmail.com>
  * @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason, 2009 Brent Garber, 2010 Brian Wolff
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License
+ * @license GPL-2.0-or-later
  * @see http://exif.org/Exif2-2.PDF The Exif 2.2 specification
  * @file
  */
@@ -740,8 +740,13 @@ class FormatMetadata extends ContextSource {
 
                                        case 'Software':
                                                if ( is_array( $val ) ) {
-                                                       // if its a software, version array.
-                                                       $val = $this->msg( 'exif-software-version-value', $val[0], $val[1] )->text();
+                                                       if ( count( $val ) > 1 ) {
+                                                               // if its a software, version array.
+                                                               $val = $this->msg( 'exif-software-version-value', $val[0], $val[1] )->text();
+                                                       } else {
+                                                               // https://phabricator.wikimedia.org/T178130
+                                                               $val = $this->exifMsg( $tag, '', $val[0] );
+                                                       }
                                                } else {
                                                        $val = $this->exifMsg( $tag, '', $val );
                                                }
@@ -1042,7 +1047,7 @@ class FormatMetadata extends ContextSource {
 
                if ( !is_array( $vals ) ) {
                        return $vals; // do nothing if not an array;
-               } elseif ( count( $vals ) === 1 && $type !== 'lang' ) {
+               } elseif ( count( $vals ) === 1 && $type !== 'lang' && isset( $vals[0] ) ) {
                        return $vals[0];
                } elseif ( count( $vals ) === 0 ) {
                        wfDebug( __METHOD__ . " metadata array with 0 elements!\n" );