Bug fix: to do not try to access a DataSource while it's being deleted

SVN:trunk[1928]
This commit is contained in:
Denis Flaven
2012-03-27 11:22:50 +00:00
parent 3679e7f8d5
commit 144b5ae39f

View File

@@ -1506,11 +1506,15 @@ class SynchroReplica extends DBObject implements iDisplay
if (!MetaModel::DBIsReadOnly())
{
$oDataSource = MetaModel::GetObject('SynchroDataSource', $this->Get('sync_source_id'));
$sTable = $oDataSource->GetDataTable();
$oDataSource = MetaModel::GetObject('SynchroDataSource', $this->Get('sync_source_id'), false);
if ($oDataSource)
{
$sTable = $oDataSource->GetDataTable();
$sSQL = "DELETE FROM `$sTable` WHERE id = '{$this->GetKey()}'";
CMDBSource::Query($sSQL);
$sSQL = "DELETE FROM `$sTable` WHERE id = '{$this->GetKey()}'";
CMDBSource::Query($sSQL);
}
// else the whole datasource has probably been already deleted
}
$this->AfterDelete();