K-9: Unified folders crash K9

Created on 28 Nov 2019  ·  3Comments  ·  Source: k9mail/k-9

Expected behavior

Opening the "Spam" / any folder in the unified account shows the (spam) folder merged for all accounts in one place.

Actual behavior

Clicking on "Spam" or any other folder crashes the app, when the unified account is selected.

Steps to reproduce

  1. Switch to the unified account
  2. Open the drawer
  3. Click on "Spam" or any other folder

Environment

K-9 Mail version:
5.700

Android version:
Android 9

11-28 09:45:08.420 10717 10717 D AndroidRuntime: Shutting down VM
11-28 09:45:08.421 10717 10717 E AndroidRuntime: FATAL EXCEPTION: main
11-28 09:45:08.421 10717 10717 E AndroidRuntime: Process: com.fsck.k9, PID: 10717
11-28 09:45:08.421 10717 10717 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.fsck.k9.Account.getUuid()' on a null object reference
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.fsck.k9.activity.MessageList.openFolder(MessageList.java:632)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.fsck.k9.ui.K9Drawer$createItemClickListener$1.onItemClick(K9Drawer.kt:204)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.mikepenz.materialdrawer.DrawerBuilder$6.onClick(DrawerBuilder.java:1786)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.mikepenz.materialdrawer.DrawerBuilder$6.onClick(DrawerBuilder.java:1760)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.mikepenz.fastadapter.FastAdapter$1.onClick(FastAdapter.java:609)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.mikepenz.fastadapter.utils.EventHookUtil$1.onClick(EventHookUtil.java:72)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.view.View.performClick(View.java:6597)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.view.View.performClickInternal(View.java:6574)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.view.View.access$3100(View.java:778)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.view.View$PerformClick.run(View.java:25906)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:873)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:193)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6718)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
11-28 09:45:08.421 10717 10717 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
11-28 09:45:08.130   908   908 I NotificationService: Cannot find enqueued record for key: 0|com.fsck.k9|35|null|10194
11-28 09:45:08.428   908  2195 W ActivityManager:   Force finishing activity com.fsck.k9/.activity.MessageList
11-28 09:45:08.435 10717 10717 I Process : Sending signal. PID: 10717 SIG: 9

Edit: I have now discovered that this issue is not restricted to the spam folder and I have changed the text and headline accordingly.
It is also very inconsistent if the unified folders are shown in the drawer or not.

bug

Most helpful comment

I can reliably reproduce this on my device:

  1. Switch from a normal account to the combined inbox
    -> no folders are displayed
  2. Close the drawer
  3. Do a refresh/mail fetch by pulling down
  4. Open the drawer again
    -> the folders (of the main account?) are displayed

All 3 comments

Folders are not supposed to be displayed when the Unified Inbox is selected. It's working as expected on my test devices.
How are you switching to the Unified Inbox? Can you provide a screenshot of how the Unified Inbox looks like with folders displayed in the drawer?

I'm switching to the unified account by tapping on the account icon in the drawer header.
If they are "not supposed to be displayed", does that mean that the unified spam folder is a discontinued feature?

image

Edit: I played a bit around and came to the observation that the folders sometimes show up when k9 fetches new mails.

I can reliably reproduce this on my device:

  1. Switch from a normal account to the combined inbox
    -> no folders are displayed
  2. Close the drawer
  3. Do a refresh/mail fetch by pulling down
  4. Open the drawer again
    -> the folders (of the main account?) are displayed
Was this page helpful?
0 / 5 - 0 ratings

Related issues

Kareem-Ahmed picture Kareem-Ahmed  ·  3Comments

SpatMan05 picture SpatMan05  ·  3Comments

maltfield picture maltfield  ·  3Comments

NovaViper picture NovaViper  ·  3Comments

bam80 picture bam80  ·  4Comments