Index: /trunk/src/VBox/HostDrivers/Support/SUPDrvGip.cpp
===================================================================
--- /trunk/src/VBox/HostDrivers/Support/SUPDrvGip.cpp	(revision 58883)
+++ /trunk/src/VBox/HostDrivers/Support/SUPDrvGip.cpp	(revision 58884)
@@ -4249,16 +4249,19 @@
                                     SUPDRVTSCDELTATHREADSTATE enmNewState)
 {
+    SUPDRVTSCDELTATHREADSTATE enmActualState;
+    int rc;
+
     /*
      * Wait a short while for the expected state transition.
      */
-    int rc;
     RTSemEventWait(pDevExt->hTscDeltaEvent, RT_MS_1SEC);
     RTSpinlockAcquire(pDevExt->hTscDeltaSpinlock);
-    if (pDevExt->enmTscDeltaThreadState == enmNewState)
+    enmActualState = pDevExt->enmTscDeltaThreadState;
+    if (enmActualState == enmNewState)
     {
         RTSpinlockRelease(pDevExt->hTscDeltaSpinlock);
         rc = VINF_SUCCESS;
     }
-    else if (pDevExt->enmTscDeltaThreadState == enmCurState)
+    else if (enmActualState == enmCurState)
     {
         /*
@@ -4273,15 +4276,14 @@
              * Check the state whether we've succeeded.
              */
-            SUPDRVTSCDELTATHREADSTATE enmState;
             RTSpinlockAcquire(pDevExt->hTscDeltaSpinlock);
-            enmState = pDevExt->enmTscDeltaThreadState;
+            enmActualState = pDevExt->enmTscDeltaThreadState;
             RTSpinlockRelease(pDevExt->hTscDeltaSpinlock);
-            if (enmState == enmNewState)
+            if (enmActualState == enmNewState)
                 rc = VINF_SUCCESS;
-            else if (enmState == enmCurState)
+            else if (enmActualState == enmCurState)
             {
                 rc = VERR_TIMEOUT;
-                OSDBGPRINT(("supdrvTscDeltaThreadWait: timed out state transition. enmState=%d enmNewState=%d\n", enmState,
-                            enmNewState));
+                OSDBGPRINT(("supdrvTscDeltaThreadWait: timed out state transition. enmActualState=%d enmNewState=%d\n",
+                            enmActualState, enmNewState));
             }
             else
@@ -4289,5 +4291,5 @@
                 rc = VERR_INTERNAL_ERROR;
                 OSDBGPRINT(("supdrvTscDeltaThreadWait: invalid state transition from %d to %d, expected %d\n", enmCurState,
-                            enmState, enmNewState));
+                            enmActualState, enmNewState));
             }
         }
@@ -4298,5 +4300,6 @@
     {
         RTSpinlockRelease(pDevExt->hTscDeltaSpinlock);
-        OSDBGPRINT(("supdrvTscDeltaThreadWait: invalid state transition from %d to %d\n", enmCurState, enmNewState));
+        OSDBGPRINT(("supdrvTscDeltaThreadWait: invalid state %d when transitioning from %d to %d\n",
+                    enmActualState, enmCurState, enmNewState));
         rc = VERR_INTERNAL_ERROR;
     }
