diff --git a/app/src/main/java/eu/faircode/email/ActivityBase.java b/app/src/main/java/eu/faircode/email/ActivityBase.java index 702b5dfeaa..f41cbfd3c9 100644 --- a/app/src/main/java/eu/faircode/email/ActivityBase.java +++ b/app/src/main/java/eu/faircode/email/ActivityBase.java @@ -766,19 +766,24 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc @Override public void onFragmentDestroyed(@NonNull FragmentManager fm, @NonNull Fragment f) { log(fm, f, "onFragmentDestroyed"); - try { - for (Field field : f.getClass().getDeclaredFields()) { - Class type = field.getType(); - if (View.class.isAssignableFrom(type) || - RecyclerView.Adapter.class.isAssignableFrom(type)) { - Log.i("Clearing " + f.getClass().getSimpleName() + ":" + field.getName()); - field.setAccessible(true); - field.set(f, null); + getMainHandler().post(new Runnable() { + @Override + public void run() { + try { + for (Field field : f.getClass().getDeclaredFields()) { + Class type = field.getType(); + if (View.class.isAssignableFrom(type) || + RecyclerView.Adapter.class.isAssignableFrom(type)) { + Log.i("Clearing " + f.getClass().getSimpleName() + ":" + field.getName()); + field.setAccessible(true); + field.set(f, null); + } + } + } catch (Throwable ex) { + Log.w(ex); } } - } catch (Throwable ex) { - Log.w(ex); - } + }); } @Override