Index: /trunk/src/VBox/Main/src-client/GuestProcessImpl.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/GuestProcessImpl.cpp	(revision 84259)
+++ /trunk/src/VBox/Main/src-client/GuestProcessImpl.cpp	(revision 84260)
@@ -1113,6 +1113,6 @@
 
     /* Prepare environment.  The guest service dislikes the empty string at the end, so drop it. */
-    size_t  cbEnvBlock = 0; /* Shut up MSVC. */
-    char   *pszzEnvBlock;
+    size_t  cbEnvBlock   = 0;    /* Shut up MSVC. */
+    char   *pszzEnvBlock = NULL; /* Ditto. */
     if (RT_SUCCESS(vrc))
         vrc = mData.mProcess.mEnvironmentChanges.queryUtf8Block(&pszzEnvBlock, &cbEnvBlock);
@@ -1129,4 +1129,5 @@
         Assert(cbEnvBlock > 0);
         cbEnvBlock--;
+        AssertPtr(pszzEnvBlock);
 
         /* Prepare HGCM call. */
@@ -1177,6 +1178,10 @@
             AssertRC(rc2);
         }
-
+    }
+
+    if (pszzEnvBlock)
+    {
         mData.mProcess.mEnvironmentChanges.freeUtf8Block(pszzEnvBlock);
+        pszzEnvBlock = NULL;
     }
 
