Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIThreadPool.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIThreadPool.cpp	(revision 57628)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIThreadPool.cpp	(revision 57629)
@@ -114,4 +114,35 @@
 }
 
+bool UIThreadPool::isTerminating() const
+{
+    /* Acquire termination-flag: */
+    m_everythingLocker.lock();
+    bool fTerminating = m_fTerminating;
+    m_everythingLocker.unlock();
+
+    return fTerminating;
+}
+
+void UIThreadPool::setTerminating()
+{
+    m_everythingLocker.lock();
+
+    /* Indicate that we're terminating: */
+    m_fTerminating = true;
+
+    /* Tell all threads to NOT queue any termination signals: */
+    for (int idxWorker = 0; idxWorker < m_workers.size(); ++idxWorker)
+    {
+        UIThreadWorker *pWorker = m_workers[idxWorker];
+        if (pWorker)
+            pWorker->setNoFinishedSignal();
+    }
+
+    /* Wake up all idle worker threads: */
+    m_taskCondition.wakeAll();
+
+    m_everythingLocker.unlock();
+}
+
 void UIThreadPool::enqueueTask(UITask *pTask)
 {
@@ -156,41 +187,4 @@
 }
 
-/**
- * Checks if the thread pool is terminating.
- *
- * @returns @c true if terminating, @c false if not.
- * @note    Do NOT call this while owning the thread pool mutex!
- */
-bool UIThreadPool::isTerminating() const
-{
-    /* Acquire termination-flag: */
-    m_everythingLocker.lock();
-    bool fTerminating = m_fTerminating;
-    m_everythingLocker.unlock();
-
-    return fTerminating;
-}
-
-void UIThreadPool::setTerminating()
-{
-    m_everythingLocker.lock();
-
-    /* Indicate that we're terminating: */
-    m_fTerminating = true;
-
-    /* Tell all threads to NOT queue any termination signals: */
-    for (int idxWorker = 0; idxWorker < m_workers.size(); ++idxWorker)
-    {
-        UIThreadWorker *pWorker = m_workers[idxWorker];
-        if (pWorker)
-            pWorker->setNoFinishedSignal();
-    }
-
-    /* Wake up all idle worker threads: */
-    m_taskCondition.wakeAll();
-
-    m_everythingLocker.unlock();
-}
-
 UITask* UIThreadPool::dequeueTask(UIThreadWorker *pWorker)
 {
@@ -263,9 +257,4 @@
 }
 
-const QVariant& UITask::data() const
-{
-    return m_data;
-}
-
 void UITask::start()
 {
Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIThreadPool.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIThreadPool.h	(revision 57628)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIThreadPool.h	(revision 57629)
@@ -52,7 +52,4 @@
     ~UIThreadPool();
 
-    /** Enqueues @a pTask into the task-queue. */
-    void enqueueTask(UITask *pTask);
-
     /** Returns whether the 'termination sequence' is started. */
     bool isTerminating() const;
@@ -60,6 +57,6 @@
     void setTerminating();
 
-protected:
-
+    /** Enqueues @a pTask into the task-queue. */
+    void enqueueTask(UITask *pTask);
     /** Returns dequeued top-most task from the task-queue.
       * @remarks Called by the @a pWorker passed as a hint. */
@@ -109,7 +106,4 @@
       * all the inter-thread variables. */
     mutable QMutex m_everythingLocker;
-
-    /** Allows UIThreadWorker to dequeue tasks. */
-    friend class UIThreadWorker;
 };
 
@@ -133,11 +127,12 @@
 
     /** Returns the inter-thread task data. */
-    const QVariant& data() const;
+    const QVariant& data() const { return m_data; }
+    /** Defines the inter-thread task @a data. */
+    void setData(const QVariant &data) { m_data = data; }
+
+    /** Starts the task. */
+    void start();
 
 protected:
-
-    /** Starts the task.
-      * @remarks Called by the worker-thread. */
-    void start();
 
     /** Contains the abstract task body.
@@ -145,11 +140,8 @@
     virtual void run() = 0;
 
-//private:
+private:
 
     /** Holds the inter-thread task data. */
     QVariant m_data;
-
-    /** Allows UIThreadWorker to start task. */
-    friend class UIThreadWorker;
 };
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumEnumerator.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumEnumerator.cpp	(revision 57628)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumEnumerator.cpp	(revision 57629)
@@ -61,9 +61,9 @@
 {
     /* Get medium: */
-    UIMedium medium = m_data.value<UIMedium>();
+    UIMedium medium = data().value<UIMedium>();
     /* Enumerate it: */
     medium.blockAndQueryState();
     /* Put medium back: */
-    m_data = QVariant::fromValue(medium);
+    setData(QVariant::fromValue(medium));
 }
 
