Index: /trunk/src/VBox/Main/src-client/GuestSessionImpl.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/GuestSessionImpl.cpp	(revision 60639)
+++ /trunk/src/VBox/Main/src-client/GuestSessionImpl.cpp	(revision 60640)
@@ -3452,6 +3452,6 @@
         if (RT_SUCCESS(vrc))
         {
-            /* Return guest session to the caller. */
-            hr = pProcess.queryInterfaceTo(aGuestProcess.asOutParam());
+            ComPtr<IGuestProcess> pIProcess;
+            hr = pProcess.queryInterfaceTo(pIProcess.asOutParam());
             if (SUCCEEDED(hr))
             {
@@ -3462,4 +3462,6 @@
                 if (RT_SUCCESS(vrc))
                 {
+                    aGuestProcess = pIProcess;
+
                     LogFlowFuncLeaveRC(vrc);
                     return S_OK;
@@ -3467,6 +3469,4 @@
 
                 hr = setErrorVrc(vrc, tr("Failed to start guest process: %Rrc"), vrc);
-                /** @todo r=bird: What happens to the interface that *aGuestProcess points to
-                 *        now?  Looks like a leak or an undocument hack of sorts... */
             }
         }
