Index: /trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp
===================================================================
--- /trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp	(revision 54132)
+++ /trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp	(revision 54133)
@@ -2730,10 +2730,17 @@
                 vboxWddmAllocationDestroy(pAllocation);
             }
-        }
-    }
-
-    pCreateAllocation->hResource = pResource;
-    if (pResource && Status != STATUS_SUCCESS)
-        vboxWddmResourceRelease(pResource);
+            break;
+        }
+    }
+
+    if (Status == STATUS_SUCCESS)
+    {
+        pCreateAllocation->hResource = pResource;
+    }
+    else
+    {
+        if (pResource)
+            vboxWddmResourceRelease(pResource);
+    }
 
     LOGF(("LEAVE, status(0x%x), context(0x%x)", Status, hAdapter));
