The method is not documented to throw any exceptions, and already
returns false on failure, and it can be seen as a failure case when the
content models are not the same.
Bug: T145044
Change-Id: I0394d19cd65f9dd3ee350d2cde95afb11ab9e7f4
return false; // no content to undo
}
- $this->checkModelID( $cur_content->getModel() );
- $this->checkModelID( $undo_content->getModel() );
- $this->checkModelID( $undoafter_content->getModel() );
+ try {
+ $this->checkModelID( $cur_content->getModel() );
+ $this->checkModelID( $undo_content->getModel() );
+ $this->checkModelID( $undoafter_content->getModel() );
+ } catch ( MWException $e ) {
+ // If the revisions have different content models
+ // just return false
+ return false;
+ }
if ( $cur_content->equals( $undo_content ) ) {
// No use doing a merge if it's just a straight revert.