kaaholst / android-squeezer

Remote control for your Logitech Media Server ("Squeezeserver" etc) and players.
Apache License 2.0
77 stars 17 forks source link

SongView.java line 167 #224

Closed kaaholst closed 3 years ago

kaaholst commented 3 years ago

in uk.org.ngo.squeezer.itemlist.SongView.doItemContext

There's a lot more information about this crash on crashlytics.com: https://fabric.io/squeezer/android/apps/uk.org.ngo.squeezer/issues/58e8c8b80aeb16625b67c09c

Original issue reported on github.com/nikclayton/android-squeezer by nikclayton on 2017-04-08T11:25:44Z

kaaholst commented 3 years ago

Exception is

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String uk.org.ngo.squeezer.model.Song.getArtistId()' on a null object reference
       at uk.org.ngo.squeezer.itemlist.SongView.doItemContext(SongView.java:167)
       at uk.org.ngo.squeezer.itemlist.CurrentPlaylistActivity$1.doItemContext(CurrentPlaylistActivity.java:195)
       at uk.org.ngo.squeezer.itemlist.CurrentPlaylistActivity$1.doItemContext(CurrentPlaylistActivity.java:124)
       at uk.org.ngo.squeezer.framework.ItemAdapter.doItemContext(ItemAdapter.java:167)
       at uk.org.ngo.squeezer.framework.BaseListActivity.onContextItemSelected(BaseListActivity.java:156)
       at android.app.Activity.onMenuItemSelected(Activity.java:3231)
       at android.support.v4.app.FragmentActivity.onMenuItemSelected(FragmentActivity.java:421)
       at android.support.v7.app.AppCompatActivity.onMenuItemSelected(AppCompatActivity.java:188)
       at android.support.v7.view.WindowCallbackWrapper.onMenuItemSelected(WindowCallbackWrapper.java:103)
       at com.android.internal.policy.PhoneWindow$DialogMenuCallback.onMenuItemSelected(PhoneWindow.java:5784)
       at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:801)
       at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:155)
       at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:954)
       at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:944)
       at com.android.internal.view.menu.MenuDialogHelper.onClick(MenuDialogHelper.java:172)
       at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:1227)
       at android.widget.AdapterView.performItemClick(AdapterView.java:345)
       at android.widget.AbsListView.performItemClick(AbsListView.java:1547)
       at android.widget.AbsListView$PerformClick.run(AbsListView.java:3821)
       at android.widget.AbsListView$3.run(AbsListView.java:5841)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:158)
       at android.app.ActivityThread.main(ActivityThread.java:7224)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

Unclear how this can happen. The object that getArtistId() is called on is the item that was selected through a long press on a context menu, so clearly must have existed.

Possibly a threading issue, resolved by the proposed autovalue branch?

Original issue reported on github.com/nikclayton/android-squeezer by nikclayton on 2017-04-09T12:04:43Z