CineLog icon indicating copy to clipboard operation
CineLog copied to clipboard

Crash when clicking `Edit tags` while offline

Open opk12 opened this issue 2 years ago • 3 comments

  • Turn off wifi.
  • Make a tag.
  • Search for a movie, click Can't find the movie, click Edit tags.
FATAL EXCEPTION: main
Process: com.ulicae.cinelog, PID: 26365
java.lang.NullPointerException: Attempt to invoke interface method 'boolean java.util.List.contains(java.lang.Object)' on a null object reference
	at com.ulicae.cinelog.android.activities.fragments.TagChooserDialog.populateTagList(TagChooserDialog.java:77)
	at com.ulicae.cinelog.android.activities.fragments.TagChooserDialog.onCreateDialog(TagChooserDialog.java:52)
	at androidx.fragment.app.DialogFragment.prepareDialog(DialogFragment.java:644)
	at androidx.fragment.app.DialogFragment.onGetLayoutInflater(DialogFragment.java:558)
	at androidx.fragment.app.Fragment.performGetLayoutInflater(Fragment.java:1654)
	at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:493)
	at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282)
	at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189)
	at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100)
	at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:2002)
	at androidx.fragment.app.FragmentManager$5.run(FragmentManager.java:524)
	at android.os.Handler.handleCallback(Handler.java:751)
	at android.os.Handler.dispatchMessage(Handler.java:95)
	at android.os.Looper.loop(Looper.java:154)
	at android.app.ActivityThread.main(ActivityThread.java:6816)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451)

opk12 avatar Sep 12 '22 08:09 opk12

Hi,

I just fixed this, and it should work in the next release. Check this out !

Thanks for your report,

Pierre

Alcidauk avatar Sep 25 '22 17:09 Alcidauk

That one is fixed, but now it crashes when clicking the confirmation button on the tag selection dialog.

  • Turn off wifi.
  • Search for a movie, click Can't find the movie, click Edit tags.
  • Check a tag.
  • Click Valider.
FATAL EXCEPTION: main
Process: com.ulicae.cinelog, PID: 26327
java.lang.NullPointerException: Attempt to invoke virtual method 'long java.lang.Long.longValue()' on a null object reference
    at com.ulicae.cinelog.data.services.tags.TagService.removeJoinWithTag(TagService.java:136)
    at com.ulicae.cinelog.data.services.tags.TagService.removeTagFromItemIfExists(TagService.java:111)
    at com.ulicae.cinelog.android.activities.fragments.TagChooserDialog.updateTagJoin(TagChooserDialog.java:95)
    at com.ulicae.cinelog.android.activities.fragments.TagChooserDialog.lambda$onCreateDialog$1$com-ulicae-cinelog-android-activities-fragments-TagChooserDialog(TagChooserDialog.java:66)
    at com.ulicae.cinelog.android.activities.fragments.TagChooserDialog$$ExternalSyntheticLambda0.onClick(D8$$SyntheticClass)
    at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:176)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:154)
    at android.app.ActivityThread.main(ActivityThread.java:6816)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451)

opk12 avatar Oct 01 '22 06:10 opk12

By the way, wouldn't this kind of issues be more conveniently found at build time with an automated linting tool?

opk12 avatar Oct 01 '22 06:10 opk12

https://github.com/Alcidauk/CineLog/issues/58 should fix this issue.

I don't think this kind of bug would be found with a linter, but some unit tests should be done to avoid it. I made some but I don't spend a lot of time on Cinelog. Maybe in the future :-)

Alcidauk avatar Sep 09 '23 22:09 Alcidauk