Tagger: Crash when performing advanced search for artist

Describe the bug

Tagger crashes when performing advanced search for an artist’s name.

Screenshots/Video

Screencast from 2023-08-02 14-25-47.webm Screencast from 2023-08-02 14-27-28.webm

System information

Tagger version: 2023.8.0 (from flathub) OS: Ubuntu 23.04 Session type: wayland

Additional context

tagger_debug.txt

Crash log:

UnhandledException - unhandled exception: System.InvalidOperationException: Failed to compare two elements in the array.
 ---> System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at NickvisionTagger.Shared.Controllers.MainWindowController.<>c__DisplayClass83_0.<AdvancedSearch>b__0(String a, String b) in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Controllers/MainWindowController.cs:line 1232
   at System.Collections.Generic.ArraySortHelper`1.InsertionSort(Span`1 keys, Comparison`1 comparer)
   at System.Collections.Generic.ArraySortHelper`1.IntroSort(Span`1 keys, Int32 depthLimit, Comparison`1 comparer)
   at System.Collections.Generic.ArraySortHelper`1.IntrospectiveSort(Span`1 keys, Comparison`1 comparer)
   at System.Collections.Generic.ArraySortHelper`1.Sort(Span`1 keys, Comparison`1 comparer)
   --- End of inner exception stack trace ---
   at System.Collections.Generic.ArraySortHelper`1.Sort(Span`1 keys, Comparison`1 comparer)
   at System.Collections.Generic.List`1.Sort(Comparison`1 comparison)
   at NickvisionTagger.Shared.Controllers.MainWindowController.AdvancedSearch(String s) in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Controllers/MainWindowController.cs:line 1232
   at NickvisionTagger.GNOME.Views.MainWindow.SearchChanged(SearchEntry sender, EventArgs e) in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Views/MainWindow.cs:line 1124
   at GObject.Signal`1.<>c__DisplayClass11_0.<Connect>b__0(Value returnValue, Value[] parameters)
   at GObject.Closure.InternalCallback(IntPtr closure, IntPtr returnValuePtr, UInt32 nParamValues, ValueData[] paramValuesData, IntPtr invocationHint, IntPtr userData)

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 17 (11 by maintainers)

Most upvoted comments

Just tried it, it’s the best behavior overall! “Féloche” matches against both fel, fél and flo, but not against flow and flm. And every other match in my library makes sense as well.