From 094e7140964facd6d0e1412e0594207a3383c37e Mon Sep 17 00:00:00 2001 From: Andrew Garrett Date: Mon, 13 Aug 2012 15:57:57 +0100 Subject: [PATCH] Fix for bug 39085 Edits to talk pages were being compared to the previous revision e ven when there was no previous revision. Change-Id: Id45575dca2ec121fc469019ad9384d035af96d51 --- includes/DiscussionParser.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/includes/DiscussionParser.php b/includes/DiscussionParser.php index 03a55747b..d4e2fdf69 100644 --- a/includes/DiscussionParser.php +++ b/includes/DiscussionParser.php @@ -122,9 +122,15 @@ abstract class EchoDiscussionParser { $userID = $revision->getUser(); $userName = $revision->getUserText(); $user = $userID != 0 ? User::newFromId( $userID ) : User::newFromName( $userName, false ); - $prevRevision = Revision::newFromId( $revision->getParentId() ); + $prevText = ''; + if ( $revision->getParentId() ) { + $prevRevision = Revision::newFromId( $revision->getParentId() ); + if ( $prevRevision ) { + $prevText = $prevRevision->getText(); + } + } - $changes = self::getMachineReadableDiff( $prevRevision->getText(), $revision->getText() ); + $changes = self::getMachineReadableDiff( $prevText, $revision->getText() ); $output = self::interpretDiff( $changes, $user->getName() ); self::$revisionInterpretationCache[$revision->getID()] = $output;