diff --git a/src/stateManagement/imageIdSpecificStateManager.js b/src/stateManagement/imageIdSpecificStateManager.js
index <HASH>..<HASH> 100755
--- a/src/stateManagement/imageIdSpecificStateManager.js
+++ b/src/stateManagement/imageIdSpecificStateManager.js
@@ -36,12 +36,14 @@ function newImageIdSpecificToolStateManager() {
   // As modules that restore saved state
   function addImageIdSpecificToolState(element, toolType, data) {
     const enabledElement = external.cornerstone.getEnabledElement(element);
-    // If we don't have any tool state for this imageId, add an empty object
 
-    if (
-      !enabledElement.image ||
-      toolState.hasOwnProperty(enabledElement.image.imageId) === false
-    ) {
+    // If we don't have an image for this element exit early
+    if (!enabledElement.image) {
+      return;
+    }
+
+    // If we don't have any tool state for this imageId, add an empty object
+    if (toolState.hasOwnProperty(enabledElement.image.imageId) === false) {
       toolState[enabledElement.image.imageId] = {};
     }
re-implements the imageIdSpecificStateManager.add bugfix