From b701c1f0fac57060f477bebc50fade94290de94c Mon Sep 17 00:00:00 2001 From: Daniel Kinzler Date: Fri, 23 Mar 2012 15:18:44 +0000 Subject: [PATCH] use content-based diff --- includes/api/ApiQueryRevisions.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/includes/api/ApiQueryRevisions.php b/includes/api/ApiQueryRevisions.php index fa58bdf047..82e15eed3c 100644 --- a/includes/api/ApiQueryRevisions.php +++ b/includes/api/ApiQueryRevisions.php @@ -503,11 +503,13 @@ class ApiQueryRevisions extends ApiQueryBase { $vals['diff'] = array(); $context = new DerivativeContext( $this->getContext() ); $context->setTitle( $title ); + $handler = ContentHandler::getForTitle( $title ); + if ( !is_null( $this->difftotext ) ) { - $engine = new DifferenceEngine( $context ); - $engine->setText( $text, $this->difftotext ); + $engine = $handler->getDifferenceEngine( $context ); + $engine->setText( $text, $this->difftotext ); #FIXME: use content object! } else { - $engine = new DifferenceEngine( $context, $revision->getID(), $this->diffto ); + $engine = $handler->getDifferenceEngine( $context, $revision->getID(), $this->diffto ); $vals['diff']['from'] = $engine->getOldid(); $vals['diff']['to'] = $engine->getNewid(); } -- 2.20.1