From 5cb1709f5dc75cb60dbd1d11e3aa1bc0a5e3f104 Mon Sep 17 00:00:00 2001 From: Skycoder42 Date: Mon, 3 Dec 2018 18:36:45 +0100 Subject: [PATCH 1/2] Correctly extract protected fields from intent Fixes #627 --- .../pluginsdk/PluginActionBroadcastReceiver.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java b/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java index 484083d7..e099d465 100644 --- a/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java +++ b/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java @@ -65,7 +65,16 @@ public abstract class PluginActionBroadcastReceiver extends BroadcastReceiver { protected String[] getProtectedFieldsListFromIntent() { - return _intent.getStringArrayExtra(Strings.EXTRA_PROTECTED_FIELDS_LIST); + try { + JSONArray json = new JSONArray(_intent.getStringExtra(Strings.EXTRA_PROTECTED_FIELDS_LIST)); + String[] res = new String[json.length()]; + for(int i = 0; i < json.length(); i++) + res[i] = json.getString(i); + return res; + } catch (JSONException e) { + e.printStackTrace(); + return null; + } } From 3157bac5f6e7c9480ef7dae960d2c46d5cc04d7f Mon Sep 17 00:00:00 2001 From: Skycoder42 Date: Mon, 3 Dec 2018 18:40:01 +0100 Subject: [PATCH 2/2] Add missing import --- .../keepass2android/pluginsdk/PluginActionBroadcastReceiver.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java b/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java index e099d465..155e224a 100644 --- a/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java +++ b/src/java/Keepass2AndroidPluginSDK2/app/src/main/java/keepass2android/pluginsdk/PluginActionBroadcastReceiver.java @@ -6,6 +6,7 @@ import java.util.Iterator; import org.json.JSONException; import org.json.JSONObject; +import org.json.JSONArray; import android.content.BroadcastReceiver; import android.content.Context;