@@ 128-153 (lines=26) @@ | ||
125 | return 'parsed-gif'; |
|
126 | } |
|
127 | ||
128 | function isMetadataValid( $image, $metadata ) { |
|
129 | if ( $metadata === self::BROKEN_FILE ) { |
|
130 | // Do not repetitivly regenerate metadata on broken file. |
|
131 | return self::METADATA_GOOD; |
|
132 | } |
|
133 | ||
134 | MediaWiki\suppressWarnings(); |
|
135 | $data = unserialize( $metadata ); |
|
136 | MediaWiki\restoreWarnings(); |
|
137 | ||
138 | if ( !$data || !is_array( $data ) ) { |
|
139 | wfDebug( __METHOD__ . " invalid GIF metadata\n" ); |
|
140 | ||
141 | return self::METADATA_BAD; |
|
142 | } |
|
143 | ||
144 | if ( !isset( $data['metadata']['_MW_GIF_VERSION'] ) |
|
145 | || $data['metadata']['_MW_GIF_VERSION'] != GIFMetadataExtractor::VERSION |
|
146 | ) { |
|
147 | wfDebug( __METHOD__ . " old but compatible GIF metadata\n" ); |
|
148 | ||
149 | return self::METADATA_COMPATIBLE; |
|
150 | } |
|
151 | ||
152 | return self::METADATA_GOOD; |
|
153 | } |
|
154 | ||
155 | /** |
|
156 | * @param File $image |
@@ 114-140 (lines=27) @@ | ||
111 | return 'parsed-png'; |
|
112 | } |
|
113 | ||
114 | function isMetadataValid( $image, $metadata ) { |
|
115 | ||
116 | if ( $metadata === self::BROKEN_FILE ) { |
|
117 | // Do not repetitivly regenerate metadata on broken file. |
|
118 | return self::METADATA_GOOD; |
|
119 | } |
|
120 | ||
121 | MediaWiki\suppressWarnings(); |
|
122 | $data = unserialize( $metadata ); |
|
123 | MediaWiki\restoreWarnings(); |
|
124 | ||
125 | if ( !$data || !is_array( $data ) ) { |
|
126 | wfDebug( __METHOD__ . " invalid png metadata\n" ); |
|
127 | ||
128 | return self::METADATA_BAD; |
|
129 | } |
|
130 | ||
131 | if ( !isset( $data['metadata']['_MW_PNG_VERSION'] ) |
|
132 | || $data['metadata']['_MW_PNG_VERSION'] != PNGMetadataExtractor::VERSION |
|
133 | ) { |
|
134 | wfDebug( __METHOD__ . " old but compatible png metadata\n" ); |
|
135 | ||
136 | return self::METADATA_COMPATIBLE; |
|
137 | } |
|
138 | ||
139 | return self::METADATA_GOOD; |
|
140 | } |
|
141 | ||
142 | /** |
|
143 | * @param File $image |
@@ 60-84 (lines=25) @@ | ||
57 | return 'parsed-webp'; |
|
58 | } |
|
59 | ||
60 | public function isMetadataValid( $image, $metadata ) { |
|
61 | if ( $metadata === self::BROKEN_FILE ) { |
|
62 | // Do not repetitivly regenerate metadata on broken file. |
|
63 | return self::METADATA_GOOD; |
|
64 | } |
|
65 | ||
66 | MediaWiki\suppressWarnings(); |
|
67 | $data = unserialize( $metadata ); |
|
68 | MediaWiki\restoreWarnings(); |
|
69 | ||
70 | if ( !$data || !is_array( $data ) ) { |
|
71 | wfDebug( __METHOD__ . " invalid WebP metadata\n" ); |
|
72 | ||
73 | return self::METADATA_BAD; |
|
74 | } |
|
75 | ||
76 | if ( !isset( $data['metadata']['_MW_WEBP_VERSION'] ) |
|
77 | || $data['metadata']['_MW_WEBP_VERSION'] != self::_MW_WEBP_VERSION |
|
78 | ) { |
|
79 | wfDebug( __METHOD__ . " old but compatible WebP metadata\n" ); |
|
80 | ||
81 | return self::METADATA_COMPATIBLE; |
|
82 | } |
|
83 | return self::METADATA_GOOD; |
|
84 | } |
|
85 | ||
86 | /** |
|
87 | * Extracts the image size and WebP type from a file |