Index: /trunk/src/VBox/Additions/common/crOpenGL/icd_drv.c
===================================================================
--- /trunk/src/VBox/Additions/common/crOpenGL/icd_drv.c	(revision 55619)
+++ /trunk/src/VBox/Additions/common/crOpenGL/icd_drv.c	(revision 55620)
@@ -110,11 +110,10 @@
 PICDTABLE APIENTRY DrvSetContext(HDC hdc, HGLRC hglrc, void *callback)
 {
-    ContextInfo *context;
-    WindowInfo *window;
-    BOOL ret;
-
-    CR_DDI_PROLOGUE();
-
-    /*crDebug( "DrvSetContext called(0x%x, 0x%x)", hdc, hglrc );*/
+    ContextInfo *pContext;
+    WindowInfo  *pWindowInfo;
+    BOOL ret = false;
+
+    CR_DDI_PROLOGUE();
+
     (void) (callback);
 
@@ -122,13 +121,20 @@
     crHashtableLock(stub.contextTable);
 
-    context = (ContextInfo *) crHashtableSearch(stub.contextTable, (unsigned long) hglrc);
-    window = stubGetWindowInfo(hdc);
-
-    ret = stubMakeCurrent(window, context);
+    pContext = (ContextInfo *) crHashtableSearch(stub.contextTable, (unsigned long) hglrc);
+    if (pContext)
+    {
+        pWindowInfo = stubGetWindowInfo(hdc);
+        if (pWindowInfo)
+            ret = stubMakeCurrent(pWindowInfo, pContext);
+        else
+            crError("no window info available.");
+    }
+    else
+        crError("No context found.");
 
     crHashtableUnlock(stub.contextTable);
     crHashtableUnlock(stub.windowTable);
 
-    return ret ? &icdTable:NULL;
+    return ret ? &icdTable : NULL;
 }
 
