diff options
| author | Bananeweizen <bananeweizen@gmx.de> | 2015-01-27 21:09:17 +0100 |
|---|---|---|
| committer | Bananeweizen <bananeweizen@gmx.de> | 2015-01-27 21:09:17 +0100 |
| commit | cd25db61db15cf360bcab05698e7406c74900a17 (patch) | |
| tree | 498bb08e20192eeac03d50d8a6dacfcf4ae89206 | |
| parent | 1481041c869097eab7899e3f898fce6e9212c1bb (diff) | |
| download | cgeo-cd25db61db15cf360bcab05698e7406c74900a17.zip cgeo-cd25db61db15cf360bcab05698e7406c74900a17.tar.gz cgeo-cd25db61db15cf360bcab05698e7406c74900a17.tar.bz2 | |
crash restoring backup if no backup exists
| -rw-r--r-- | main/res/values/changelog_release.xml | 1 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java | 7 |
2 files changed, 6 insertions, 2 deletions
diff --git a/main/res/values/changelog_release.xml b/main/res/values/changelog_release.xml index b0a7286..50e28b3 100644 --- a/main/res/values/changelog_release.xml +++ b/main/res/values/changelog_release.xml @@ -4,6 +4,7 @@ <string name="changelog_release" translatable="false">\n <b>Next release</b>\n · Fix: Crash exporting GPX for lab caches\n + · Fix: Crash restoring non-existing database backup\n \n \n <b>2015.01.20:</b>\n diff --git a/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java b/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java index e7e793f..ab27264 100644 --- a/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java +++ b/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java @@ -32,6 +32,9 @@ public class DatabaseBackupUtils { * calling activity */ public static void restoreDatabase(final Activity activity) { + if (!hasBackup()) { + return; + } final Resources res = activity.getResources(); final ProgressDialog dialog = ProgressDialog.show(activity, res.getString(R.string.init_backup_restore), res.getString(R.string.init_restore_running), true, false); final AtomicBoolean restoreSuccessful = new AtomicBoolean(false); @@ -44,8 +47,8 @@ public class DatabaseBackupUtils { @Override public void call() { dialog.dismiss(); - boolean restored = restoreSuccessful.get(); - String message = restored ? res.getString(R.string.init_restore_success) : res.getString(R.string.init_restore_failed); + final boolean restored = restoreSuccessful.get(); + final String message = restored ? res.getString(R.string.init_restore_success) : res.getString(R.string.init_restore_failed); Dialogs.message(activity, R.string.init_backup_restore, message); if (activity instanceof MainActivity) { ((MainActivity) activity).updateCacheCounter(); |
