From 2c6f26e36b6c5e811da268ec8f77bf1eef476bf4 Mon Sep 17 00:00:00 2001
From: Jeff Mitchell <tomahawk@jefferai.org>
Date: Thu, 21 Jun 2012 16:15:52 -0400
Subject: [PATCH] Set no parent on Impls and explicitly delete them. Tested
 fine here.

---
 src/libtomahawk/database/Database.cpp     | 1 +
 src/libtomahawk/database/DatabaseImpl.cpp | 2 --
 2 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/libtomahawk/database/Database.cpp b/src/libtomahawk/database/Database.cpp
index 135705d65..3333fb15c 100644
--- a/src/libtomahawk/database/Database.cpp
+++ b/src/libtomahawk/database/Database.cpp
@@ -67,6 +67,7 @@ Database::~Database()
 
     qDeleteAll( m_workers );
     delete m_workerRW;
+    qDeleteAll( m_implHash.values() );
     delete m_impl;
 }
 
diff --git a/src/libtomahawk/database/DatabaseImpl.cpp b/src/libtomahawk/database/DatabaseImpl.cpp
index bd8c8dd5a..051df69a5 100644
--- a/src/libtomahawk/database/DatabaseImpl.cpp
+++ b/src/libtomahawk/database/DatabaseImpl.cpp
@@ -44,7 +44,6 @@
 
 
 DatabaseImpl::DatabaseImpl( const QString& dbname )
-    : QObject( (QObject*) QThread::currentThread() )
 {
     QTime t;
     t.start();
@@ -86,7 +85,6 @@ DatabaseImpl::DatabaseImpl( const QString& dbname )
 
 
 DatabaseImpl::DatabaseImpl( const QString& dbname, bool internal )
-    : QObject( (QObject*) QThread::currentThread() )
 {
     Q_UNUSED( internal );
     openDatabase( dbname, false );