[DATABASE] Disable 'NULL' strings evaluation as SQL NULLs
Use $object->sqlValue('NULL') (identical to DataObject_Cast'ing) instead and fix related issues like (email|sms)settings considering these NULLs as a false positive for the E-Mail address still being set when it's been removed. There could also be security implications to the now-disabled approach of considering 'NULL' strings as SQL NULLs.
This commit is contained in:
@@ -480,7 +480,7 @@ class FeedSub extends Managed_DataObject
|
||||
$this->sub_end = common_sql_date(time() + $lease_seconds);
|
||||
} else {
|
||||
// Backwards compatibility to StatusNet (PuSH <0.4 supported permanent subs)
|
||||
$this->sub_end = DB_DataObject_Cast::sql('NULL');
|
||||
$this->sub_end = $this->sqlValue('NULL');
|
||||
}
|
||||
$this->modified = common_sql_now();
|
||||
|
||||
@@ -496,10 +496,10 @@ class FeedSub extends Managed_DataObject
|
||||
{
|
||||
$original = clone($this);
|
||||
|
||||
$this->secret = DB_DataObject_Cast::sql('NULL');
|
||||
$this->secret = $this->sqlValue('NULL');
|
||||
$this->sub_state = 'inactive';
|
||||
$this->sub_start = DB_DataObject_Cast::sql('NULL');
|
||||
$this->sub_end = DB_DataObject_Cast::sql('NULL');
|
||||
$this->sub_start = $this->sqlValue('NULL');
|
||||
$this->sub_end = $this->sqlValue('NULL');
|
||||
$this->modified = common_sql_now();
|
||||
|
||||
return $this->update($original);
|
||||
|
Reference in New Issue
Block a user