Merge pull request #11712 from jitendrapurohit/CRM-21795
[civicrm-core.git] / CRM / Core / ManagedEntities.php
index 4de184a28c1b1d11092c1f98481327da4c5e87f4..5021859b01c0ef9a2cbabd1fa397aa7f369d5a34 100644 (file)
@@ -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'),
+        ));
+      }
     }
   }