+ return $count;
+ }
+
+ /**
+ * @param stdClass $row
+ * @param string $table
+ * @param string $idCol
+ * @param string $prefix
+ * @return bool
+ */
+ protected function upgradeRow( $row, $table, $idCol, $prefix ) {
+ $db = $this->getDB( DB_MASTER );
+
+ $rev = ( $table === 'archive' )
+ ? Revision::newFromArchiveRow( $row )
+ : new Revision( $row );
+
+ $content = $rev->getContent();
+ if ( !$content ) {
+ # This should not happen, but sometimes does (bug 20757)
+ $id = $row->$idCol;
+ $this->output( "Content of $table $id unavailable!\n" );
+
+ return false;
+ }
+
+ # Update the row...
+ $db->update( $table,
+ array( "{$prefix}_len" => $content->getSize() ),
+ array( $idCol => $row->$idCol ),
+ __METHOD__
+ );
+