Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 50868)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 50869)
@@ -2157,10 +2157,22 @@
     CMachine machine = constMachine;
     KSessionState sessionState = machine.GetSessionState();
+    /* Session state unlocked? */
     if (sessionState == KSessionState_Unlocked)
     {
+        /* Open own 'write' session: */
         session = openSession(machine.GetId());
         AssertReturnVoid(!session.isNull());
         machine = session.GetMachine();
     }
+    /* Is it Selector UI call? */
+    else if (!isVMConsoleProcess())
+    {
+        /* Open existing 'shared' session: */
+        session = openExistingSession(machine.GetId());
+        AssertReturnVoid(!session.isNull());
+        machine = session.GetMachine();
+    }
+    /* Else this is Runtime UI call
+     * which has session locked for itself. */
 
     /* Remount medium to the predefined port/device: */
