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 fb2f414733cf7f39039ad51f1ef097d3f4442f10..8b6435a233dabd84b53519b4e2c9f7cf38ffc7e9 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 {