Index: branches/eraser6/6.0/Eraser.Util.Unlocker/Eraser.Util.Unlocker.cpp
===================================================================
--- branches/eraser6/6.0/Eraser.Util.Unlocker/Eraser.Util.Unlocker.cpp	(revision 2331)
+++ branches/eraser6/6.0/Eraser.Util.Unlocker/Eraser.Util.Unlocker.cpp	(revision 2333)
@@ -121,10 +121,11 @@
 
 		//Forcibly close the handle
+		HANDLE duplicateHandle = NULL;
 		DuplicateHandle(processHandle, static_cast<void*>(Handle), GetCurrentProcess(),
-			NULL, 0, false, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE);
+			&duplicateHandle, 0, false, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE);
+		CloseHandle(duplicateHandle);
 
 		//Check if the handle is closed
 		bool result = true;
-		HANDLE duplicateHandle = NULL;
 		if (DuplicateHandle(processHandle, static_cast<void*>(Handle), GetCurrentProcess(),
 			&duplicateHandle, 0, false, DUPLICATE_SAME_ACCESS))
