Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 48309)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 48310)
@@ -4208,4 +4208,29 @@
     }
 
+    /* After initializing *vmUuid* we already know if that is VM process or not: */
+    if (!isVMConsoleProcess())
+    {
+        /* We should create separate logging file for VM selector: */
+        char szLogFile[RTPATH_MAX];
+        const char *pszLogFile = NULL;
+        com::GetVBoxUserHomeDirectory(szLogFile, sizeof(szLogFile));
+        RTPathAppend(szLogFile, sizeof(szLogFile), "selectorwindow.log");
+        pszLogFile = szLogFile;
+        /* Create release logger, to file: */
+        char szError[RTPATH_MAX + 128];
+        com::VBoxLogRelCreate("GUI VM Selector Window",
+                              pszLogFile,
+                              RTLOGFLAGS_PREFIX_TIME_PROG,
+                              "all",
+                              "VBOX_GUI_SELECTORWINDOW_RELEASE_LOG",
+                              RTLOGDEST_FILE,
+                              UINT32_MAX,
+                              1,
+                              60 * 60,
+                              _1M,
+                              szError,
+                              sizeof(szError));
+    }
+
     if (mSettingsPwSet)
         mVBox.SetSettingsSecret(mSettingsPw);
Index: /trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/chooser/UIGChooserModel.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/chooser/UIGChooserModel.cpp	(revision 48309)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/chooser/UIGChooserModel.cpp	(revision 48310)
@@ -46,8 +46,4 @@
 #include "CMachine.h"
 #include "CVirtualBox.h"
-
-/* Other VBox includes: */
-#include <VBox/com/com.h>
-#include <iprt/path.h>
 
 /* Type defs: */
@@ -86,7 +82,4 @@
     /* Prepare connections: */
     prepareConnections();
-
-    /* Prepare release logging: */
-    prepareReleaseLogging();
 }
 
@@ -1227,28 +1220,4 @@
     connect(gVBoxEvents, SIGNAL(sigSnapshotChange(QString, QString)),
             this, SLOT(sltSnapshotChanged(QString, QString)));
-}
-
-void UIGChooserModel::prepareReleaseLogging()
-{
-    /* Prepare release logging: */
-    char szLogFile[RTPATH_MAX];
-    const char *pszLogFile = NULL;
-    com::GetVBoxUserHomeDirectory(szLogFile, sizeof(szLogFile));
-    RTPathAppend(szLogFile, sizeof(szLogFile), "selectorwindow.log");
-    pszLogFile = szLogFile;
-    /* Create release logger, to file: */
-    char szError[RTPATH_MAX + 128];
-    com::VBoxLogRelCreate("GUI VM Selector Window",
-                          pszLogFile,
-                          RTLOGFLAGS_PREFIX_TIME_PROG,
-                          "all",
-                          "VBOX_GUI_SELECTORWINDOW_RELEASE_LOG",
-                          RTLOGDEST_FILE,
-                          UINT32_MAX,
-                          1,
-                          60 * 60,
-                          _1M,
-                          szError,
-                          sizeof(szError));
 }
 
@@ -1635,18 +1604,20 @@
 {
     /* Add all the approved machines we have into the group-tree: */
-    LogRel(("Loading VMs started...\n"));
+    LogRelFlow(("UIGChooserModel: Loading VMs...\n"));
     foreach (CMachine machine, vboxGlobal().virtualBox().GetMachines())
         if (VBoxGlobal::shouldWeShowMachine(machine))
             addMachineIntoTheTree(machine);
-    LogRel(("Loading VMs finished.\n"));
+    LogRelFlow(("UIGChooserModel: VMs loaded.\n"));
 }
 
 void UIGChooserModel::addMachineIntoTheTree(const CMachine &machine, bool fMakeItVisible /* = false */)
 {
+    /* Make sure passed VM is not NULL: */
+    if (machine.isNull())
+        LogRelFlow(("UIGChooserModel: ERROR: Passed VM is NULL!\n"));
+    AssertReturnVoid(!machine.isNull());
+
     /* Which VM we are loading: */
-    if (machine.isNull())
-        LogRel((" ERROR: VM is NULL!\n"));
-    else
-        LogRel((" Loading VM {%s}...\n", machine.GetId().toAscii().constData()));
+    LogRelFlow(("UIGChooserModel: Loading VM with ID={%s}...\n", machine.GetId().toAscii().constData()));
     /* Is that machine accessible? */
     if (machine.GetAccessible())
@@ -1654,11 +1625,11 @@
         /* VM is accessible: */
         QString strName = machine.GetName();
-        LogRel((" VM {%s} is accessible.\n", strName.toAscii().constData()));
+        LogRelFlow(("UIGChooserModel:  VM {%s} is accessible.\n", strName.toAscii().constData()));
         /* Which groups passed machine attached to? */
         QVector<QString> groups = machine.GetGroups();
         QStringList groupList = groups.toList();
         QString strGroups = groupList.join(", ");
-        LogRel((" VM {%s} groups are {%s}.\n", strName.toAscii().constData(),
-                                               strGroups.toAscii().constData()));
+        LogRelFlow(("UIGChooserModel:  VM {%s} has groups: {%s}.\n", strName.toAscii().constData(),
+                                                                     strGroups.toAscii().constData()));
         foreach (QString strGroup, groups)
         {
@@ -1667,6 +1638,6 @@
                 strGroup.truncate(strGroup.size() - 1);
             /* Create machine-item with found group-item as parent: */
-            LogRel(("  Creating item for VM {%s}, group {%s}.\n", strName.toAscii().constData(),
-                                                                  strGroup.toAscii().constData()));
+            LogRelFlow(("UIGChooserModel:   Creating item for VM {%s} in group {%s}.\n", strName.toAscii().constData(),
+                                                                                         strGroup.toAscii().constData()));
             createMachineItem(machine, getGroupItem(strGroup, mainRoot(), fMakeItVisible));
         }
@@ -1678,5 +1649,5 @@
     {
         /* VM is accessible: */
-        LogRel((" VM {%s} is inaccessible.\n", machine.GetId().toAscii().constData()));
+        LogRelFlow(("UIGChooserModel:  VM {%s} is inaccessible.\n", machine.GetId().toAscii().constData()));
         /* Create machine-item with main-root group-item as parent: */
         createMachineItem(machine, mainRoot());
Index: /trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/chooser/UIGChooserModel.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/chooser/UIGChooserModel.h	(revision 48309)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/chooser/UIGChooserModel.h	(revision 48310)
@@ -219,5 +219,4 @@
     void prepareHandlers();
     void prepareConnections();
-    void prepareReleaseLogging();
     void loadLastSelectedItem();
 
