summaryrefslogtreecommitdiff
path: root/noncore
Side-by-side diff
Diffstat (limited to 'noncore') (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/backup/backuprestore.cpp25
1 files changed, 21 insertions, 4 deletions
diff --git a/noncore/settings/backup/backuprestore.cpp b/noncore/settings/backup/backuprestore.cpp
index 87b7966..58e5c71 100644
--- a/noncore/settings/backup/backuprestore.cpp
+++ b/noncore/settings/backup/backuprestore.cpp
@@ -254,3 +254,3 @@ void BackupAndRestore::backup()
- QString commandLine = QString( "cd %1 && (tar -X %1 -cz %2 -f %3 ) 2> %4" ).arg( QDir::homeDirPath() )
+ QString commandLine = QString( "cd %1 && (tar -X %1 -cz %2 Applications/backup/exclude -f %3 ) 2> %4" ).arg( QDir::homeDirPath() )
.arg( getExcludeFile() )
@@ -423,3 +423,20 @@ void BackupAndRestore::restore()
- QString commandLine = QString( "cd %1 && tar -zxf %2 2> %3" ).arg( QDir::homeDirPath() )
+ //check if backup file come from opie 1.0.x
+
+ QString commandLine = QString( "tar -tzf %1 | grep Applications/backup/exclude" ).arg( restoreFile.latin1() );
+
+ int r = system( commandLine );
+
+ QString startDir;
+
+ if( r != 0 ) //Applications/backup/exclude not found - old backup file
+ {
+ startDir = QString( "/" );
+ } else
+ {
+ startDir = QDir::homeDirPath();
+ }
+
+ //unpack backup file
+ commandLine = QString( "cd %1 && tar -zxf %2 2> %3" ).arg( startDir )
.arg( restoreFile.latin1() )
@@ -429,4 +446,5 @@ void BackupAndRestore::restore()
- int r = system( commandLine );
+ r = system( commandLine );
+ //error handling
if(r != 0)
@@ -480,3 +498,2 @@ void BackupAndRestore::restore()
-
/**