[SCM] Kaboom - Debian KDE 3->4 migration tool branch, master, updated. master/1.1.1-14-g6db9c53

George Kiagiadakis gkiagia-guest at alioth.debian.org
Wed Jul 8 15:01:43 UTC 2009


The following commit has been merged in the master branch:
commit 5fcc0446121f162f049b7d8b43667f598fc5f148
Author: George Kiagiadakis <kiagiadakis.george at gmail.com>
Date:   Wed Jul 8 17:54:43 2009 +0300

    Correctly remove $KDEHOME if it is a symlink in the "start with clean settings" scenario.
---
 migrationpage.cpp |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/migrationpage.cpp b/migrationpage.cpp
index ced5200..bf7dff6 100644
--- a/migrationpage.cpp
+++ b/migrationpage.cpp
@@ -131,7 +131,8 @@ bool MigrationPagePrivate::haveSomethingToDo()
 {
   if ((selection == MigrationTool::Migrate && !backup) ||
       (selection == MigrationTool::Clean &&
-       !KaboomSettings::instance().kdehomeDir().exists()))
+       !KaboomSettings::instance().kdehomeDir().exists() &&
+       !QFileInfo(KaboomSettings::instance().kdehomeDir().path()).isSymLink()))
       return false;
   else
       return true;
@@ -159,8 +160,6 @@ void MigrationPagePrivate::doMagic()
   switch(selection)
   {
       case MigrationTool::Migrate:
-        progress->setMaximum(1); //fake the progress bar progress.
-        progress->setValue(1);
         qDebug() << "operation: do nothing, let kconf_update do magic";
         break;
       case MigrationTool::Merge:
@@ -171,7 +170,12 @@ void MigrationPagePrivate::doMagic()
         break;
       case MigrationTool::Clean:
         qDebug() << "operation: do recursive rm of .kde dir if exists";
-        job = RecursiveDirJob::recursiveRmDir(KaboomSettings::instance().kdehomeDir().path());
+        if ( KaboomSettings::instance().kdehomeDir().exists() ) {
+            job = RecursiveDirJob::recursiveRmDir(KaboomSettings::instance().kdehomeDir().canonicalPath());
+        }
+        if ( QFileInfo(KaboomSettings::instance().kdehomeDir().path()).isSymLink() ) {
+            QFile::remove(KaboomSettings::instance().kdehomeDir().path());
+        }
         break;
       case MigrationTool::Move:
         job = RecursiveDirJob::recursiveCpDir(KaboomSettings::instance().kde4homeDir().canonicalPath(),
@@ -185,6 +189,9 @@ void MigrationPagePrivate::doMagic()
     connect(job, SIGNAL(errorOccured(QString)), this, SLOT(errorhandling(QString)) );
     job->synchronousRun(progress);
     delete job;
+  } else {
+    progress->setMaximum(1); //fake the progress bar progress.
+    progress->setValue(1);
   }
 
   if (errorbox->isVisible()) // if errors, ...

-- 
Kaboom - Debian KDE 3->4 migration tool



More information about the pkg-kde-commits mailing list