diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2016-06-05 04:23:39 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2016-06-05 04:23:39 +0200 |
commit | 4e10e30c2f99d552239871aa1b27a08a6c18f1a4 (patch) | |
tree | fc8426e57068733d7df20fc3a963f11cd864f079 /src/db/DatabaseTable.vala | |
parent | 0d64f78a02829282cd00dd6df691df08d29ed751 (diff) |
Imported Upstream version 0.23.1upstream/0.23.1
Diffstat (limited to 'src/db/DatabaseTable.vala')
-rw-r--r-- | src/db/DatabaseTable.vala | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/db/DatabaseTable.vala b/src/db/DatabaseTable.vala index 235ac06..42eac69 100644 --- a/src/db/DatabaseTable.vala +++ b/src/db/DatabaseTable.vala @@ -1,4 +1,4 @@ -/* Copyright 2009-2015 Yorba Foundation +/* Copyright 2016 Software Freedom Conservancy Inc. * * This software is licensed under the GNU LGPL (version 2.1 or later). * See the COPYING file in this distribution. @@ -69,10 +69,17 @@ public abstract class DatabaseTable { db = null; string backup_path = filename + ".bak"; - string cmdline = "cp " + backup_path + " " + filename; - Posix.system(cmdline); - prepare_db(filename); + try { + File src = File.new_for_commandline_arg(backup_path); + File dest = File.new_for_commandline_arg(filename); + src.copy(dest, + FileCopyFlags.OVERWRITE | + FileCopyFlags.ALL_METADATA); + prepare_db(filename); + } catch (Error error) { + AppWindow.panic(_("Unable to restore photo database %s").printf(error.message)); + } } // disable synchronized commits for performance reasons ... this is not vital, hence we |