From 23d7efff53a304c21978a9a63d4b141d9acf32d9 Mon Sep 17 00:00:00 2001 From: Rick Brown Date: Sun, 12 Feb 2023 12:24:25 -0500 Subject: [PATCH] Bugfix for #2223 - crash after import database by SFTP Add FLAG_MUTABLE flag to PendingIntent call for API >= 31 to fix an issue where trying to open an SFTP database (transition to choose a remote database file) crashes and returns to the Open/New database screen. --- .../java/keepass2android/javafilestorage/SftpUserInfo.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/java/JavaFileStorage/app/src/main/java/keepass2android/javafilestorage/SftpUserInfo.java b/src/java/JavaFileStorage/app/src/main/java/keepass2android/javafilestorage/SftpUserInfo.java index 4f43ce7d..6737535c 100644 --- a/src/java/JavaFileStorage/app/src/main/java/keepass2android/javafilestorage/SftpUserInfo.java +++ b/src/java/JavaFileStorage/app/src/main/java/keepass2android/javafilestorage/SftpUserInfo.java @@ -51,7 +51,12 @@ public class SftpUserInfo implements UserInfo { intent.putExtra("keepass2android.sftp.prompt", text); intent.setData((Uri.parse("suckit://"+SystemClock.elapsedRealtime()))); - PendingIntent contentIntent = PendingIntent.getActivity(_appContext, 0, intent, 0); + int flags = 0; + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.S) { + flags |= PendingIntent.FLAG_MUTABLE; + } + PendingIntent contentIntent = PendingIntent.getActivity(_appContext, 0, intent, flags); + builder.setContentIntent(contentIntent); {