* @return int
*/
public function getWidth( $page = 1 ) {
+ $page = (int)$page;
+ if ( $page < 1 ) {
+ $page = 1;
+ }
+
$this->load();
if ( $this->isMultipage() ) {
* @return int
*/
public function getHeight( $page = 1 ) {
+ $page = (int)$page;
+ if ( $page < 1 ) {
+ $page = 1;
+ }
+
$this->load();
if ( $this->isMultipage() ) {
$options = [];
$handler = MediaHandler::getHandler( $props['mime'] );
if ( $handler ) {
- $options['headers'] = $handler->getStreamHeaders( $props['metadata'] );
+ $metadata = MediaWiki\quietCall( 'unserialize', $props['metadata'] );
+
+ if ( !is_array( $metadata ) ) {
+ $metadata = [];
+ }
+
+ $options['headers'] = $handler->getContentHeaders( $metadata );
} else {
$options['headers'] = [];
}