Daniel Kinzler has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/403638 )

Change subject: Revision::newNullRevision should return null for bad page ID.
......................................................................

Revision::newNullRevision should return null for bad page ID.

Bug: T184687
Change-Id: I893d71999f034f84bf067dedacb821a74374ea7c
---
M includes/Revision.php
M tests/phpunit/includes/RevisionDbTestBase.php
2 files changed, 16 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/38/403638/1

diff --git a/includes/Revision.php b/includes/Revision.php
index 0844e89..f62e811 100644
--- a/includes/Revision.php
+++ b/includes/Revision.php
@@ -1066,6 +1066,12 @@
                $comment = CommentStoreComment::newUnsavedComment( $summary, 
null );
 
                $title = Title::newFromID( $pageId );
+
+               if ( !$title ) {
+                       // page not found
+                       return null;
+               }
+
                $rec = self::getRevisionStore()->newNullRevision( $dbw, $title, 
$comment, $minor, $user );
 
                return new Revision( $rec );
diff --git a/tests/phpunit/includes/RevisionDbTestBase.php 
b/tests/phpunit/includes/RevisionDbTestBase.php
index 6139524..427a95e 100644
--- a/tests/phpunit/includes/RevisionDbTestBase.php
+++ b/tests/phpunit/includes/RevisionDbTestBase.php
@@ -620,6 +620,16 @@
        }
 
        /**
+        * @covers Revision::newNullRevision
+        */
+       public function testNewNullRevision_badPage() {
+               $dbw = wfGetDB( DB_MASTER );
+               $rev = Revision::newNullRevision( $dbw, -1, 'a null revision', 
false );
+
+               $this->assertNull( $rev );
+       }
+
+       /**
         * @covers Revision::insertOn
         */
        public function testInsertOn() {

-- 
To view, visit https://gerrit.wikimedia.org/r/403638
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I893d71999f034f84bf067dedacb821a74374ea7c
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Daniel Kinzler <daniel.kinz...@wikimedia.de>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to