Index: /trunk/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp	(revision 68154)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp	(revision 68155)
@@ -409,6 +409,12 @@
     : QTableView(pParent)
 {
-    /* Prepare all: */
+    /* Prepare: */
     prepare();
+}
+
+QITableView::~QITableView()
+{
+    /* Cleanup: */
+    cleanup();
 }
 
@@ -476,2 +482,9 @@
 }
 
+void QITableView::cleanup()
+{
+    /* Disconnect all the editors prematurelly: */
+    foreach (QObject *pEditor, m_editors.values())
+        disconnect(pEditor, 0, this, 0);
+}
+
Index: /trunk/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.h	(revision 68154)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.h	(revision 68155)
@@ -98,4 +98,6 @@
     /** Constructs table-view passing @a pParent to the base-class. */
     QITableView(QWidget *pParent = 0);
+    /** Destructs table-view. */
+    virtual ~QITableView() /* override */;
 
     /** Returns the number of children. */
@@ -123,4 +125,6 @@
     /** Prepares all. */
     void prepare();
+    /** Cleanups all. */
+    void cleanup();
 
     /** Holds the map of editors stored for passed indexes. */
