From 69913ebead5d939d531a4076b2ba4edf457def45 Mon Sep 17 00:00:00 2001 From: Catfriend1 Date: Wed, 25 Jul 2018 14:02:02 +0200 Subject: [PATCH 1/4] Add paranoid safety checks to FolderActivity#onOptionsItemSelected (fixes #1190) --- .../com/nutomic/syncthingandroid/activities/FolderActivity.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java index af87d842..f5d64e9e 100644 --- a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java +++ b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java @@ -437,6 +437,8 @@ public class FolderActivity extends SyncthingActivity } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && mFolderUri != null && + mFolder != null && + mFolder.type != null && mFolder.type.equals(Constants.FOLDER_TYPE_SEND_ONLY)) { /** * Normally, syncthing takes care of creating the ".stfolder" marker. From 9382685fc959f18bf39eb68aeb98d4177ed6be53 Mon Sep 17 00:00:00 2001 From: Catfriend1 Date: Thu, 26 Jul 2018 10:16:11 +0200 Subject: [PATCH 2/4] More Log --- .../activities/FolderActivity.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java index f5d64e9e..35d11996 100644 --- a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java +++ b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java @@ -436,10 +436,17 @@ public class FolderActivity extends SyncthingActivity return true; } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && - mFolderUri != null && - mFolder != null && - mFolder.type != null && - mFolder.type.equals(Constants.FOLDER_TYPE_SEND_ONLY)) { + mFolderUri != null) { + if (mFolder == null) { + Log.e(TAG, "mFolder == null"); + } + if (mFolder.type == null) { + Log.e(TAG, "mFolder.type == null"); + } + if (mFolder.type.equals(Constants.FOLDER_TYPE_SEND_ONLY)) { + Log.e(TAG, "mFolder.type == Constants.FOLDER_TYPE_SEND_ONLY"); + } + /** * Normally, syncthing takes care of creating the ".stfolder" marker. * This fails on newer android versions if the syncthing binary only has From aad57de03d05a6ffdac43bc02a16fde14a9f9795 Mon Sep 17 00:00:00 2001 From: Catfriend1 Date: Thu, 26 Jul 2018 10:23:16 +0200 Subject: [PATCH 3/4] Initialize mFolder.type to FOLDER_TYPE_SEND_RECEIVE according to the switch element having android:checked=false by default in the xml layout. --- .../activities/FolderActivity.java | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java index 35d11996..67670166 100644 --- a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java +++ b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java @@ -436,17 +436,8 @@ public class FolderActivity extends SyncthingActivity return true; } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && - mFolderUri != null) { - if (mFolder == null) { - Log.e(TAG, "mFolder == null"); - } - if (mFolder.type == null) { - Log.e(TAG, "mFolder.type == null"); - } - if (mFolder.type.equals(Constants.FOLDER_TYPE_SEND_ONLY)) { - Log.e(TAG, "mFolder.type == Constants.FOLDER_TYPE_SEND_ONLY"); - } - + mFolderUri != null && + mFolder.type.equals(Constants.FOLDER_TYPE_SEND_ONLY)) { /** * Normally, syncthing takes care of creating the ".stfolder" marker. * This fails on newer android versions if the syncthing binary only has @@ -595,6 +586,7 @@ public class FolderActivity extends SyncthingActivity */ mFolder.rescanIntervalS = 3600; mFolder.paused = false; + mFolder.type = Constants.FOLDER_TYPE_SEND_RECEIVE; mFolder.versioning = new Folder.Versioning(); } From d78b86f5b43eb79a4b1d0588b9f387a64b01771d Mon Sep 17 00:00:00 2001 From: Catfriend1 Date: Thu, 26 Jul 2018 10:24:58 +0200 Subject: [PATCH 4/4] Fix missing blank line --- .../com/nutomic/syncthingandroid/activities/FolderActivity.java | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java index 67670166..03fedf84 100644 --- a/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java +++ b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java @@ -572,6 +572,7 @@ public class FolderActivity extends SyncthingActivity } return sb.toString(); } + private void initFolder() { mFolder = new Folder(); mFolder.id = (getIntent().hasExtra(EXTRA_FOLDER_ID))