Merge "Perform input validation for file $page at some strategic locations"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Mon, 26 Jun 2017 06:55:16 +0000 (06:55 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 26 Jun 2017 06:55:16 +0000 (06:55 +0000)
includes/filerepo/file/LocalFile.php
includes/filerepo/file/UnregisteredLocalFile.php

index 8d715e8..e1c2546 100644 (file)
@@ -716,6 +716,11 @@ class LocalFile extends File {
         * @return int
         */
        public function getWidth( $page = 1 ) {
+               $page = (int)$page;
+               if ( $page < 1 ) {
+                       $page = 1;
+               }
+
                $this->load();
 
                if ( $this->isMultipage() ) {
@@ -743,6 +748,11 @@ class LocalFile extends File {
         * @return int
         */
        public function getHeight( $page = 1 ) {
+               $page = (int)$page;
+               if ( $page < 1 ) {
+                       $page = 1;
+               }
+
                $this->load();
 
                if ( $this->isMultipage() ) {
index 5ee25cd..b22f8cb 100644 (file)
@@ -111,6 +111,11 @@ class UnregisteredLocalFile extends File {
         * @return bool
         */
        private function cachePageDimensions( $page = 1 ) {
+               $page = (int)$page;
+               if ( $page < 1 ) {
+                       $page = 1;
+               }
+
                if ( !isset( $this->dims[$page] ) ) {
                        if ( !$this->getHandler() ) {
                                return false;