diff --git a/item_updater.cpp b/item_updater.cpp
index 91421b8..fcb7aca 100644
--- a/item_updater.cpp
+++ b/item_updater.cpp
@@ -489,6 +489,7 @@
     }
     else
     {
+        removeAssociation(ita->second->path);
         activations.erase(entryId);
     }
     return;
@@ -582,12 +583,11 @@
     associations(assocs);
 }
 
-void ItemUpdater::removeActiveAssociation(const std::string& path)
+void ItemUpdater::removeAssociation(const std::string& path)
 {
     for (auto iter = assocs.begin(); iter != assocs.end();)
     {
-        if ((std::get<0>(*iter)).compare(ACTIVE_FWD_ASSOCIATION) == 0 &&
-            (std::get<2>(*iter)).compare(path) == 0)
+        if ((std::get<2>(*iter)).compare(path) == 0)
         {
             iter = assocs.erase(iter);
             associations(assocs);
diff --git a/item_updater.hpp b/item_updater.hpp
index 41e229f..1dc0868 100644
--- a/item_updater.hpp
+++ b/item_updater.hpp
@@ -165,11 +165,11 @@
      */
     void updateFunctionalAssociation(const std::string& path);
 
-    /** @brief Removes an active association to the software image
+    /** @brief Removes the associations from the provided software image path
      *
      * @param[in]  path - The path to remove the association from.
      */
-    void removeActiveAssociation(const std::string& path);
+    void removeAssociation(const std::string& path);
 
     /** @brief Persistent GardReset dbus object */
     std::unique_ptr<GardReset> gardReset;
