From c440309c780a1f431e8751a0a182dc4ab99b83b1 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 23 Apr 2019 10:21:14 +0200 Subject: [PATCH] Prevent crash --- app/src/main/java/eu/faircode/email/Core.java | 9 ++++----- app/src/main/java/eu/faircode/email/FragmentOptions.java | 2 ++ 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index 026d438c60..f466c9e4e9 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -1675,11 +1675,10 @@ class Core { if (light) builder.setLights(Color.GREEN, 1000, 1000); - if (sound == null) { - Uri uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); - builder.setSound(uri); - } else - builder.setSound(Uri.parse(sound)); + Uri uri = (sound == null ? null : Uri.parse(sound)); + if (uri == null || "file".equals(uri.getScheme())) + uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); + builder.setSound(uri); builder.setOnlyAlertOnce(true); } else diff --git a/app/src/main/java/eu/faircode/email/FragmentOptions.java b/app/src/main/java/eu/faircode/email/FragmentOptions.java index 57a98a99b7..33d0af6d51 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptions.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptions.java @@ -828,6 +828,8 @@ public class FragmentOptions extends FragmentBase implements SharedPreferences.O if (resultCode == RESULT_OK) { Uri uri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI); Log.i("Selected ringtone=" + uri); + if (uri != null && "file".equals(uri.getScheme())) + uri = null; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); if (uri == null)