Index: /trunk/src/VBox/GuestHost/OpenGL/util/blitter.cpp
===================================================================
--- /trunk/src/VBox/GuestHost/OpenGL/util/blitter.cpp	(revision 45508)
+++ /trunk/src/VBox/GuestHost/OpenGL/util/blitter.cpp	(revision 45509)
@@ -541,5 +541,5 @@
 int CrBltEnter(PCR_BLITTER pBlitter, const CR_BLITTER_CONTEXT *pRestoreCtxInfo, const CR_BLITTER_WINDOW *pRestoreMural)
 {
-    if (!pBlitter->CurrentMural.Base.id)
+    if (!pBlitter->CurrentMural.Base.id && pBlitter->CtxInfo.Base.id)
     {
         crWarning("current mural not initialized!");
@@ -555,4 +555,5 @@
     if (pBlitter->CurrentMural.Base.id) /* <- pBlitter->CurrentMural.Base.id can be null if the blitter is in a "no-context" mode (see comments to BltInit for detail)*/
     {
+        pBlitter->pDispatch->Flush();
         pBlitter->pDispatch->MakeCurrent(pBlitter->CurrentMural.Base.id, pBlitter->i32MakeCurrentUserData, pBlitter->CtxInfo.Base.id);
     }
@@ -570,6 +571,4 @@
         pBlitter->pRestoreCtxInfo = pRestoreCtxInfo;
         pBlitter->pRestoreMural = pRestoreMural;
-
-        pBlitter->pDispatch->Flush();
     }
     else
