Index: /trunk/src/VBox/VMM/VMMR0/VMMR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/VMMR0.cpp	(revision 30250)
+++ /trunk/src/VBox/VMM/VMMR0/VMMR0.cpp	(revision 30251)
@@ -1241,22 +1241,28 @@
 
     PVMCPU pVCpu = VMMGetCpu(pVM);
-
-    /*
-     * Check that the jump buffer is armed.
-     */
+    if (pVCpu)
+    {
+        /*
+         * Check that the jump buffer is armed.
+         */
 # ifdef RT_ARCH_X86
-    if (    !pVCpu->vmm.s.CallRing3JmpBufR0.eip
-        ||  pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
+        if (    !pVCpu->vmm.s.CallRing3JmpBufR0.eip
+            ||  pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
 # else
-    if (    !pVCpu->vmm.s.CallRing3JmpBufR0.rip
-        ||  pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
+        if (    !pVCpu->vmm.s.CallRing3JmpBufR0.rip
+            ||  pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
 # endif
-    {
+        {
 # ifdef DEBUG
-        SUPR0Printf("vmmR0LoggerFlush: Jump buffer isn't armed!\n");
+            SUPR0Printf("vmmR0LoggerFlush: Jump buffer isn't armed!\n");
 # endif
-        return;
-    }
-    VMMRZCallRing3(pVM, pVCpu, VMMCALLRING3_VMM_LOGGER_FLUSH, 0);
+            return;
+        }
+        VMMRZCallRing3(pVM, pVCpu, VMMCALLRING3_VMM_LOGGER_FLUSH, 0);
+    }
+# ifdef DEBUG
+    else
+        SUPR0Printf("vmmR0LoggerFlush: invalid VCPU context!\n");
+# endif
 #endif
 }
