From ec5f3df9abb53454254743633f0b713e0491006c Mon Sep 17 00:00:00 2001
From: Janne Koschinski <janne@kuschku.de>
Date: Sun, 25 Mar 2018 18:10:08 +0200
Subject: [PATCH] Fix crash in crash list when no crashes exist

---
 .../quasseldroid/ui/settings/crash/CrashSettingsFragment.kt  | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/settings/crash/CrashSettingsFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/settings/crash/CrashSettingsFragment.kt
index fb2f41473..8b6435a23 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/settings/crash/CrashSettingsFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/settings/crash/CrashSettingsFragment.kt
@@ -70,7 +70,9 @@ class CrashSettingsFragment : ServiceBoundFragment() {
       val gson = this.gson
 
       if (crashDir != null && gson != null) {
+        crashDir.mkdirs()
         val list: List<Pair<Report, String>> = crashDir.listFiles()
+          .orEmpty()
           .map { it.readText() }
           .map { Pair<Report, String>(gson.fromJson(it), it) }
           .sortedByDescending { it.first.environment?.crashTime }
@@ -155,7 +157,8 @@ class CrashSettingsFragment : ServiceBoundFragment() {
   override fun onOptionsItemSelected(item: MenuItem?) = when (item?.itemId) {
     R.id.action_delete_all -> {
       runInBackground {
-        File(requireContext().cacheDir, "crashes").listFiles().forEach {
+        crashDir?.mkdirs()
+        crashDir?.listFiles()?.forEach {
           it.delete()
         }
         requireActivity().runOnUiThread {
-- 
GitLab