X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCore%2FManagedEntities.php;h=5021859b01c0ef9a2cbabd1fa397aa7f369d5a34;hb=e5e6e7528e4c54e8dc9816d0b2bb482dafeda578;hp=66db51e95985d3b4ab4fcbdd3067b5a0e3d4e7c1;hpb=493c757190d33b6818048dae6053d22ef153acc9;p=civicrm-core.git diff --git a/CRM/Core/ManagedEntities.php b/CRM/Core/ManagedEntities.php index 66db51e959..5021859b01 100644 --- a/CRM/Core/ManagedEntities.php +++ b/CRM/Core/ManagedEntities.php @@ -34,7 +34,7 @@ class CRM_Core_ManagedEntities { protected $declarations; /** - * Get an instance + * Get an instance. * @param bool $fresh * @return \CRM_Core_ManagedEntities */ @@ -334,14 +334,17 @@ class CRM_Core_ManagedEntities { 'version' => 3, 'id' => $dao->entity_id, ); - $result = civicrm_api($dao->entity_type, 'delete', $params); - if ($result['is_error']) { - $this->onApiError($dao->entity_type, 'delete', $params, $result); - } + $check = civicrm_api3($dao->entity_type, 'get', $params); + if ((bool) $check['count']) { + $result = civicrm_api($dao->entity_type, 'delete', $params); + if ($result['is_error']) { + $this->onApiError($dao->entity_type, 'delete', $params, $result); + } - CRM_Core_DAO::executeQuery('DELETE FROM civicrm_managed WHERE id = %1', array( - 1 => array($dao->id, 'Integer'), - )); + CRM_Core_DAO::executeQuery('DELETE FROM civicrm_managed WHERE id = %1', array( + 1 => array($dao->id, 'Integer'), + )); + } } }