Bug 482210 - Juk 24.02 crashes on start with ASSERT failure in QList::operator[]: "index out of range"
Summary: Juk 24.02 crashes on start with ASSERT failure in QList::operator[]: "index o...
Status: RESOLVED FIXED
Alias: None
Product: juk
Classification: Applications
Component: general (other bugs)
Version First Reported In: 24.02.0
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: Scott Wheeler
URL:
Keywords: qt6
Depends on:
Blocks:
 
Reported: 2024-03-02 04:58 UTC by Michael
Modified: 2024-09-10 12:58 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael 2024-03-02 04:58:51 UTC
Running the new version of Juk 24.02 on Plasma 6/Qt 6.6.2, Juk crashes on start with a fatal assert error.

Juk is unusable with Qt6.x.


STEPS TO REPRODUCE

1. Clear Juk caches (optional)
2. Start juk from terminal

OBSERVED RESULT

The initial window appears where you can set the location to scan for Music, but after you confirm, it crashes:

warning: queue 0x55a9ba01ee90 destroyed while proxies still attached:
  wl_registry@31 still attached
org.kde.juk: Unable to setup to load cache... perhaps it doesn't exist?
ASSERT failure in QList::operator[]: "index out of range", file /usr/include/x86_64-linux-gnu/qt6/QtCore/qlist.h, line 436
KCrash: Application 'juk' crashing... crashRecursionCounter = 2
KCrash: Application Name = juk path = /usr/bin pid = 23698
KCrash: Arguments: /usr/bin/juk 
KCrash: Attempting to start /usr/lib/x86_64-linux-gnu/libexec/drkonqi
warning: queue 0x557a90518400 destroyed while proxies still attached:
  wl_registry@31 still attached
QSocketNotifier: Invalid socket 6 and type 'Read', disabling...
QSocketNotifier: Invalid socket 35 and type 'Read', disabling...


SOFTWARE/OS VERSIONS

Operating System: KDE neon 6.0
KDE Plasma Version: 6.0.0
KDE Frameworks Version: 6.0.0
Qt Version: 6.6.2
Kernel Version: 6.5.0-21-generic (64-bit)
Graphics Platform: Wayland
Comment 1 Kåre Särs 2024-03-06 09:32:15 UTC
Hi,
I got hit by the same thing....

It seems that Playlist::calculateColumnWeights() somehow gets a mismatch in the number of columns.

m_weightDirty contains column index 11, but m_columnWeights only has 11 columns

And a possibly related bug I have after adding an index check, is that column content after "Album" is shifted one step to the right. "Track" is empty....
Comment 2 Bug Janitor Service 2024-04-01 11:03:00 UTC
A possibly relevant merge request was started @ https://invent.kde.org/multimedia/juk/-/merge_requests/37
Comment 3 Kåre Särs 2024-09-10 12:58:37 UTC
Git commit 4536976274c2851d89a62dea079bde738506f1ff by Kåre Särs.
Committed on 10/09/2024 at 08:26.
Pushed by sars into branch 'master'.

Place CoverColumn last, to not interfere with other columns

M  +3    -0    playlist.cpp
M  +2    -2    playlistitem.cpp
M  +9    -9    playlistitem.h

https://invent.kde.org/multimedia/juk/-/commit/4536976274c2851d89a62dea079bde738506f1ff