Merge "Make content handlers assemble content for search"
[lhc/web/wiklou.git] / includes / page / WikiPage.php
index c17fe1e..bded84d 100644 (file)
@@ -1836,7 +1836,8 @@ class WikiPage implements Page, IDBAccessObject {
                                        ContentHandler::runLegacyHooks( 'ArticleSaveComplete', $params );
                                        Hooks::run( 'PageContentSaveComplete', $params );
                                }
-                       )
+                       ),
+                       DeferredUpdates::PRESEND
                );
 
                return $status;
@@ -1961,7 +1962,8 @@ class WikiPage implements Page, IDBAccessObject {
                                        Hooks::run( 'PageContentSaveComplete', $params );
 
                                }
-                       )
+                       ),
+                       DeferredUpdates::PRESEND
                );
 
                return $status;
@@ -2052,7 +2054,7 @@ class WikiPage implements Page, IDBAccessObject {
                }
 
                if ( $this->mPreparedEdit
-                       && $this->mPreparedEdit->newContent
+                       && isset( $this->mPreparedEdit->newContent )
                        && $this->mPreparedEdit->newContent->equals( $content )
                        && $this->mPreparedEdit->revid == $revid
                        && $this->mPreparedEdit->format == $serialFormat
@@ -2927,6 +2929,8 @@ class WikiPage implements Page, IDBAccessObject {
                        ],
                        __METHOD__
                );
+               // Save this so we can pass it to the ArticleDeleteComplete hook.
+               $archivedRevisionCount = $dbw->affectedRows();
 
                // Now that it's safely backed up, delete it
                $dbw->delete( 'page', [ 'page_id' => $id ], __METHOD__ );
@@ -2957,7 +2961,7 @@ class WikiPage implements Page, IDBAccessObject {
                $this->doDeleteUpdates( $id, $content );
 
                Hooks::run( 'ArticleDeleteComplete',
-                       [ &$this, &$user, $reason, $id, $content, $logEntry ] );
+                       [ &$this, &$user, $reason, $id, $content, $logEntry, $archivedRevisionCount ] );
                $status->value = $logid;
 
                // Show log excerpt on 404 pages rather than just a link