From: Aaron Schulz Date: Fri, 22 May 2015 23:39:05 +0000 (-0700) Subject: Cleaned up CAS check in RevDelLogItem::setBits for recentchanges X-Git-Tag: 1.31.0-rc.0~11318 X-Git-Url: https://git.cyclocoop.org/%27.WWW_URL.%27admin/?a=commitdiff_plain;h=433ff9be16fffb5ef70ae6e0800960085a6cb0e0;p=lhc%2Fweb%2Fwiklou.git Cleaned up CAS check in RevDelLogItem::setBits for recentchanges Change-Id: I6c29653361a0937489c27891739a9dc626c20167 --- diff --git a/includes/revisiondelete/RevDelLogItem.php b/includes/revisiondelete/RevDelLogItem.php index 49adf204a8..5c831072fe 100644 --- a/includes/revisiondelete/RevDelLogItem.php +++ b/includes/revisiondelete/RevDelLogItem.php @@ -53,6 +53,21 @@ class RevDelLogItem extends RevDelItem { public function setBits( $bits ) { $dbw = wfGetDB( DB_MASTER ); + + $dbw->update( 'logging', + array( 'log_deleted' => $bits ), + array( + 'log_id' => $this->row->log_id, + 'log_deleted' => $this->getBits() // cas + ), + __METHOD__ + ); + + if ( !$dbw->affectedRows() ) { + // Concurrent fail! + return false; + } + $dbw->update( 'recentchanges', array( 'rc_deleted' => $bits, @@ -64,16 +79,8 @@ class RevDelLogItem extends RevDelItem { ), __METHOD__ ); - $dbw->update( 'logging', - array( 'log_deleted' => $bits ), - array( - 'log_id' => $this->row->log_id, - 'log_deleted' => $this->getBits() - ), - __METHOD__ - ); - return (bool)$dbw->affectedRows(); + return true; } public function getHTML() { diff --git a/includes/revisiondelete/RevDelRevisionItem.php b/includes/revisiondelete/RevDelRevisionItem.php index 300ce6adb7..17e1fd18ed 100644 --- a/includes/revisiondelete/RevDelRevisionItem.php +++ b/includes/revisiondelete/RevDelRevisionItem.php @@ -67,7 +67,7 @@ class RevDelRevisionItem extends RevDelItem { array( 'rev_id' => $this->revision->getId(), 'rev_page' => $this->revision->getPage(), - 'rev_deleted' => $this->getBits() + 'rev_deleted' => $this->getBits() // cas ), __METHOD__ );