Throw around some intval()s on page id, length data coming out of database into Title and Article objects and the link cache... blast PHP's soft typing!
if( $data ) {
$lc->addGoodLinkObj( $data->page_id, $this->mTitle, $data->page_len, $data->page_is_redirect );
- $this->mTitle->mArticleID = $data->page_id;
+ $this->mTitle->mArticleID = intval( $data->page_id );
# Old-fashioned restrictions
$this->mTitle->loadRestrictions( $data->page_restrictions );
- $this->mCounter = $data->page_counter;
+ $this->mCounter = intval( $data->page_counter );
$this->mTouched = wfTimestamp( TS_MW, $data->page_touched );
- $this->mIsRedirect = $data->page_is_redirect;
- $this->mLatest = $data->page_latest;
+ $this->mIsRedirect = intval( $data->page_is_redirect );
+ $this->mLatest = intval( $data->page_latest );
} else {
if( is_object( $this->mTitle ) ) {
$lc->addBadLinkObj( $this->mTitle );
*/
public function addGoodLinkObj( $id, $title, $len = -1, $redir = NULL ) {
$dbkey = $title->getPrefixedDbKey();
- $this->mGoodLinks[$dbkey] = $id;
- $this->mGoodLinkFields[$dbkey] = array( 'length' => $len, 'redirect' => $redir );
+ $this->mGoodLinks[$dbkey] = intval( $id );
+ $this->mGoodLinkFields[$dbkey] = array(
+ 'length' => intval( $len ),
+ 'redirect' => intval( $redir ) );
}
public function addBadLinkObj( $title ) {
__METHOD__, $options );
# Set fields...
if ( $s !== false ) {
- $id = $s->page_id;
- $len = $s->page_len;
- $redirect = $s->page_is_redirect;
+ $id = intval( $s->page_id );
+ $len = intval( $s->page_len );
+ $redirect = intval( $s->page_is_redirect );
} else {
$len = -1;
$redirect = 0;
$linkCache->clearBadLink( $this->getPrefixedDBkey() );
if ( $newid === false ) { $this->mArticleID = -1; }
- else { $this->mArticleID = $newid; }
+ else { $this->mArticleID = intval( $newid ); }
$this->mRestrictionsLoaded = false;
$this->mRestrictions = array();
}