diff --git a/modules/type/dag/dap_chain_cs_dag.c b/modules/type/dag/dap_chain_cs_dag.c
index ddbdce1eb0d620aa9f6e198a23ca8d48b17d26b5..07756772ce34fb553b68095f6da7f4dfad9d9827 100644
--- a/modules/type/dag/dap_chain_cs_dag.c
+++ b/modules/type/dag/dap_chain_cs_dag.c
@@ -555,7 +555,8 @@ static dap_chain_atom_verify_res_t s_chain_callback_atom_add(dap_chain_t * a_cha
     }
     pthread_mutex_unlock(&PVT(l_dag)->events_mutex);
     if (ret == ATOM_REJECT) { // Neither added, nor freed
-        DAP_DELETE(l_event_item->event);
+        if (!a_chain->is_mapped)
+            DAP_DELETE(l_event_item->event);
         DAP_DELETE(l_event_item);
     }
     return ret;