From 552f3fe5a5caeb743764db5f78891d3c06d05156 Mon Sep 17 00:00:00 2001 From: zeapo Date: Fri, 11 Aug 2017 09:37:09 +0200 Subject: [PATCH] Put the rebase abort in an async task uhum... there was network operation --- .../com/zeapo/pwdstore/git/GitActivity.java | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/zeapo/pwdstore/git/GitActivity.java b/app/src/main/java/com/zeapo/pwdstore/git/GitActivity.java index 1a43fec4..9ea4415b 100644 --- a/app/src/main/java/com/zeapo/pwdstore/git/GitActivity.java +++ b/app/src/main/java/com/zeapo/pwdstore/git/GitActivity.java @@ -520,16 +520,21 @@ public class GitActivity extends AppCompatActivity { } public void abortRebase(View view) { - Repository repo = PasswordRepository.getRepository(PasswordRepository.getRepositoryDirectory(getApplicationContext())); + final Repository repo = PasswordRepository.getRepository(PasswordRepository.getRepositoryDirectory(getApplicationContext())); if (repo != null) { - try { - // no network or heavy computation done, it's ok to do it on the ui-thread - new Git(repo).rebase().setOperation(RebaseCommand.Operation.ABORT).call(); - } catch (Exception e) { - //ignore - } finally { - showGitConfig(); - } + new GitOperation(PasswordRepository.getRepositoryDirectory(activity), activity) { + @Override + public void execute() { + Log.d(TAG, "Resetting the repository"); + assert repository != null; + GitAsyncTask tasks = new GitAsyncTask(activity, false, true, this); + tasks.execute(new Git(repo).rebase().setOperation(RebaseCommand.Operation.ABORT)); + } + @Override + public void onSuccess() { + showGitConfig(); + } + }.execute(); } }