Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adding WVuMeterGL as alternative for WVuMeter #10893

Merged
merged 41 commits into from
Oct 4, 2022

Conversation

m0dB
Copy link
Contributor

@m0dB m0dB commented Sep 12, 2022

Under load, the WVuMeter paint events, triggered constantly by the WaveformWidgetFactory, would cause the Qt event queue to become extremely laggy (up to more than a second before a mouse or keyboard event was handled). I changed WVuMeter to be a QGlWidget, just like WSpinny, and also called its render & swap in the same way. This solves the responsiveness issues I was seeing on MacOS.

(Note that there is room for additional improvements. Instead of using QPainter to draw the PixMaps, it is likely faster to use QGLWidget's texture rendering. Also I would like the clip light to be part of the vumeter.)

@github-actions github-actions bot added the ui label Sep 12, 2022
@ronso0
Copy link
Member

ronso0 commented Sep 12, 2022

I thought you worked on top of 2.3, if this is still true please rebase. or otherwiese resolve the conflicts.

@daschuer daschuer changed the base branch from main to 2.3 September 13, 2022 05:32
@github-actions github-actions bot added the skins label Sep 13, 2022
@m0dB
Copy link
Contributor Author

m0dB commented Sep 13, 2022

@ronso0 I am indeed working on top of 2.3, my bad. I see @daschuer corrected the base branch, thanks.

@ronso0
Copy link
Member

ronso0 commented Sep 13, 2022

FYI with Tango I can shutdown cleanly -- with the other skins I get this segfault

Backtrace Debug [Main]: 0 ms stopping pending Library tasks Debug [Main]: Destroying MixxxMainWindow Debug [Main]: 0 ms saving configuration Debug [Main]: 0 ms deleting skin Debug [Main]: ~DlgAutoDJ() Debug [Main]: 348 ms deleting menubar Debug [Main]: 372 ms deleting SoundManager [Thread 0x7ffe28fe9700 (LWP 92906) exited] Debug [Main]: 475 ms deleting ControllerManager Debug [Controller]: Controller polling stopped. Debug [Controller]: Deleting PortMIDI devices... Debug [Controller]: ControllerEngine shutting down... Debug [Controller]: Invoking shutdown() hook in scripts Debug [Controller]: Clearing function wrapper cache Debug [Controller]: Deleting ControlObjectScript "[Channel2]" "repeat" Debug [Controller]: Deleting ControlObjectScript "[Channel2]" "slip_enabled" Debug [Controller]: Deleting ControlObjectScript "[Channel2]" "beats_translate_curpos" Debug [Controller]: Deleting USB Bulk devices... Debug [Controller]: Deleting HID devices... [Thread 0x7ffef0826700 (LWP 92839) exited] [Thread 0x7ffef2ffd700 (LWP 92836) exited] Debug [Main]: 477 ms deleting VinylControlManager [Thread 0x7fffbe255700 (LWP 92820) exited] Debug [Main]: 477 ms deleting PlayerManager Debug [Main]: PlayerManager - Destroying Debug [Main]: TrackAnalysisScheduler - Stopping Debug [Main]: TrackAnalysisScheduler - Stopping Debug [AnalyzerThread 3 #4]: AnalyzerWaveform - ~AnalyzerWaveform(): Debug [AnalyzerThread 3 #4]: AnalyzerThread - Exiting worker thread Debug [AnalyzerThread 2 #3]: AnalyzerWaveform - ~AnalyzerWaveform(): Debug [AnalyzerThread 1 #2]: AnalyzerWaveform - ~AnalyzerWaveform(): Debug [AnalyzerThread 2 #3]: AnalyzerThread - Exiting worker thread Debug [AnalyzerThread 1 #2]: AnalyzerThread - Exiting worker thread Debug [AnalyzerThread 0 #1]: AnalyzerWaveform - ~AnalyzerWaveform(): Debug [AnalyzerThread 0 #1]: AnalyzerThread - Exiting worker thread Debug [AnalyzerThread 1 #2]: DbConnection - Closing database connection: "MIXXX-4" QSqlDatabase(driver="QSQLITE", database="file:///home/ronso/.mixxx_dev/mixxxdb.sqlite", host="", port=-1, user="mixxx", open=true) Debug [AnalyzerThread 3 #4]: DbConnection - Closing database connection: "MIXXX-6" QSqlDatabase(driver="QSQLITE", database="file:///home/ronso/.mixxx_dev/mixxxdb.sqlite", host="", port=-1, user="mixxx", open=true) Debug [AnalyzerThread 2 #3]: DbConnection - Closing database connection: "MIXXX-5" QSqlDatabase(driver="QSQLITE", database="file:///home/ronso/.mixxx_dev/mixxxdb.sqlite", host="", port=-1, user="mixxx", open=true) Debug [AnalyzerThread 0 #1]: DbConnection - Closing database connection: "MIXXX-3" QSqlDatabase(driver="QSQLITE", database="file:///home/ronso/.mixxx_dev/mixxxdb.sqlite", host="", port=-1, user="mixxx", open=true) Debug [AnalyzerThread 1 #2]: AnalyzerThread 1 - Exiting Debug [AnalyzerThread 2 #3]: AnalyzerThread 2 - Exiting Debug [AnalyzerThread 3 #4]: AnalyzerThread 3 - Exiting Debug [AnalyzerThread 0 #1]: AnalyzerThread 0 - Exiting [Thread 0x7ffef3fff700 (LWP 92834) exited] [Thread 0x7ffef37fe700 (LWP 92835) exited] [Thread 0x7fff04e81700 (LWP 92833) exited] [Thread 0x7fff05682700 (LWP 92832) exited] Debug [Main]: 480 ms deleting Library Debug [Main]: Wait to finish browser background thread Debug [Main]: Browser background thread terminated! [Thread 0x7fff05e83700 (LWP 92831) exited] Debug [Main]: Committing transaction on "MIXXX-1" result: true Debug [Main]: PlaylistDAO::getHiddenType returns PLHT_UNKNOWN for playlistId 44 Debug [Main]: Dropping Rekordbox table: "rekordbox_playlist_tracks" Debug [Main]: Dropping Rekordbox table: "rekordbox_playlists" Debug [Main]: Dropping Rekordbox table: "rekordbox_library" Debug [Main]: Committing transaction on "MIXXX-1" result: true Debug [Main]: Dropping Serato table: "serato_playlist_tracks" Debug [Main]: Dropping Serato table: "serato_playlists" Debug [Main]: Dropping Serato table: "serato_library" Debug [Main]: Committing transaction on "MIXXX-1" result: true Debug [Main]: 512 ms deleting RecordingManager Debug [Main]: Delete RecordingManager Debug [Main]: 512 ms deleting BroadcastManager Debug [Main]: DlgPrefBroadcast - broadcastEnabledChanged() 0 Debug [Main]: 512 ms deleting EngineMaster [Thread 0x7fffc8ce1700 (LWP 92807) exited] [Thread 0x7fffc9d63700 (LWP 92806) exited] [Thread 0x7fffbccbf700 (LWP 92821) exited] [Thread 0x7fff2788a700 (LWP 92822) exited] [Thread 0x7fff26460700 (LWP 92823) exited] [Thread 0x7fff25036700 (LWP 92824) exited] [Thread 0x7fff17afe700 (LWP 92825) exited] [Thread 0x7fff16aeb700 (LWP 92826) exited] [Thread 0x7fff15a3b700 (LWP 92827) exited] [Thread 0x7fff1498b700 (LWP 92828) exited] [Thread 0x7fff0788a700 (LWP 92829) exited] [Thread 0x7ffed7fff700 (LWP 92840) exited] [Thread 0x7ffed77fe700 (LWP 92841) exited] [Thread 0x7ffed6ffd700 (LWP 92842) exited] [Thread 0x7ffed67fc700 (LWP 92843) exited] [Thread 0x7ffed5ffb700 (LWP 92844) exited] [Thread 0x7ffed57fa700 (LWP 92845) exited] [Thread 0x7ffed4ff9700 (LWP 92846) exited] [Thread 0x7ffeb3fff700 (LWP 92848) exited] [Thread 0x7ffeb37fe700 (LWP 92849) exited] [Thread 0x7ffeb2ffd700 (LWP 92850) exited] [Thread 0x7ffeb27fc700 (LWP 92851) exited] [Thread 0x7ffeb1ffb700 (LWP 92852) exited] Debug [Main]: 553 ms deleting DlgPreferences Debug [Main]: 567 ms deleting EffectsManager [Thread 0x7ffef1ffb700 (LWP 92838) exited] Debug [Main]: 682 ms detaching all track collections Info [Main]: TrackCollectionManager - Stopping library scanner thread Debug [LibraryScanner 1]: LibraryScanner - Event loop stopped Debug [LibraryScanner 1]: DbConnection - Closing database connection: "MIXXX-2" QSqlDatabase(driver="QSQLITE", database="file:///home/ronso/.mixxx_dev/mixxxdb.sqlite", host="", port=-1, user="mixxx", open=true) Warning [LibraryScanner 1]: QSqlDatabasePrivate::removeDatabase: connection 'MIXXX-2' is still in use, all queries will cease to work. Debug [LibraryScanner 1]: LibraryScanner - Exiting thread Info [Main]: TrackCollectionManager - Stopped library scanner thread Debug [Main]: ~TrackDAO() Info [Main]: TrackCollection - Disconnecting track source [Thread 0x7fff06684700 (LWP 92830) exited] Info [Main]: TrackCollection - Disconnecting database Debug [Main]: TrackDAO::finish() Debug [Main]: Clearing played information for this session Debug [Main]: Cleaning LibraryHashes/track_locations tables. Debug [Main]: SqlTransaction - Started new SQL database transaction on "MIXXX-1" Debug [Main]: SqlTransaction - Committed SQL database transaction on "MIXXX-1" Info [Main]: GlobalTrackCache - Destroying instance

Thread 1 "mixxx" received signal SIGSEGV, Segmentation fault.
0x00007ffff3a1d680 in QArrayData::shared_null () from /lib/x86_64-linux-gnu/libQt5Core.so.5
(gdb) thread apply all bt full

Thread 106 (Thread 0x7ffe27fe7700 (LWP 92908)):
#0 futex_abstimed_wait_cancelable (private=, abstime=0x7ffe27fe6390, clockid=, expected=0, futex_word=0x5555726bc1a4) at ../sysdeps/nptl/futex-internal.h:320
__ret = -516
__ret =
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe27fe6310, __canceltype = -1140850656, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x5555726bc178, mutex = 0x5555726bc150, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 3
seq = 1
flags =
clockid =
#1 __pthread_cond_wait_common (abstime=0x7ffe27fe6390, clockid=, mutex=0x5555726bc150, cond=0x5555726bc178) at pthread_cond_wait.c:520
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe27fe6310, __canceltype = -1140850656, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x5555726bc178, mutex = 0x5555726bc150, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 3
seq = 1
flags =
clockid =
#2 __pthread_cond_timedwait (cond=0x5555726bc178, mutex=0x5555726bc150, abstime=0x7ffe27fe6390) at pthread_cond_wait.c:665
flags =
clockid =
#3 0x00007ffff377aa7c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377abcb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3778171 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140729569408768, 1724888966670500584, 140737488329630, 140737488329631, 140737488329824, 140729569404352, -1725926918720404760, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 105 (Thread 0x7ffe287e8700 (LWP 92907)):
#0 futex_abstimed_wait_cancelable (private=, abstime=0x7ffe287e7390, clockid=, expected=0, futex_word=0x5555726b70a4) at ../sysdeps/nptl/futex-internal.h:320
__ret = -516
__ret =
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe287e7310, __canceltype = 1, __prev = 0x0}
cbuffer = {wseq = 7, cond = 0x5555726b7078, mutex = 0x5555726b7050, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 7
seq = 3
flags =
clockid =
#1 __pthread_cond_wait_common (abstime=0x7ffe287e7390, clockid=, mutex=0x5555726b7050, cond=0x5555726b7078) at pthread_cond_wait.c:520
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe287e7310, __canceltype = 1, __prev = 0x0}
cbuffer = {wseq = 7, cond = 0x5555726b7078, mutex = 0x5555726b7050, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 7
seq = 3
flags =
clockid =
#2 __pthread_cond_timedwait (cond=0x5555726b7078, mutex=0x5555726b7050, abstime=0x7ffe287e7390) at pthread_cond_wait.c:665
flags =
clockid =
#3 0x00007ffff377aa7c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377abcb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3778171 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140729577801472, 1724888966670500584, 140737488329630, 140737488329631, 140737488329824, 140729577797056, -1725906027462606104, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7fffcac98700 (LWP 92801)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x7ffff77cbfb8) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcac97450, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x7ffff77cbf90, mutex = 0x7ffff77cbf68, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7ffff77cbf68, cond=0x7ffff77cbf90) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcac97450, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x7ffff77cbf90, mutex = 0x7ffff77cbf68, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#2 __pthread_cond_wait (cond=0x7ffff77cbf90, mutex=0x7ffff77cbf68) at pthread_cond_wait.c:647
#3 0x00007ffff76ce5fa in () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#4 0x00007ffff76ce61f in () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736595592960, 1724888966670500584, 140737488344686, 140737488344687, 140737488344688, 140736595588544, -1724987565886225688, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7fffcbfff700 (LWP 92800)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x5555566058c8) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcbffe2e0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x5555566058a0, mutex = 0x555556605878, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x555556605878, cond=0x5555566058a0) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcbffe2e0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x5555566058a0, mutex = 0x555556605878, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#2 __pthread_cond_wait (cond=0x5555566058a0, mutex=0x555556605878) at pthread_cond_wait.c:647
#3 0x00007fffd86365eb in () at /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4 0x00007fffd86361eb in () at /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736615937792, 1724888966670500584, 140737488340670, 140737488340671, 140737488340672, 140736615933376, -1724985723882126616, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7fffda7fc700 (LWP 92799)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffc40025e0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff3994435 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff393b3ab in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3773785 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff3c16efa in () at /lib/x86_64-linux-gnu/libQt5DBus.so.5
#7 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#8 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736859195136, 1724888966670500584, 140737488345086, 140737488345087, 140737488345280, 140736859190720, -1724951640632278296, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#9 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7fffdaffd700 (LWP 92798)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x5555565aaef0) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffdaffc2d0, __canceltype = 2, __prev = 0x0}
cbuffer = {wseq = 100, cond = 0x5555565aaec8, mutex = 0x5555565aaea0, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 100
seq = 50
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5555565aaea0, cond=0x5555565aaec8) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffdaffc2d0, __canceltype = 2, __prev = 0x0}
cbuffer = {wseq = 100, cond = 0x5555565aaec8, mutex = 0x5555565aaea0, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 100
seq = 50
#2 __pthread_cond_wait (cond=0x5555565aaec8, mutex=0x5555565aaea0) at pthread_cond_wait.c:647
#3 0x00007ffff377ab0f in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377ac01 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x0000555555854557 in StatsManager::run() (this=0x55555653bc50) at /home/ronso/Downloads/mixxx_source/src/master/src/util/statsmanager.cpp:245
PRETTY_FUNCTION = "virtual void StatsManager::run()"
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736867587840, 1724888966670500584, 140737488345486, 140737488345487, 140737488345680, 140736867583424, -1724952737459551512, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fffdbfff700 (LWP 92796)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffd4005a30, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e46f3 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff2adbf8a in () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736884373248, 1724888966670500584, 140737100824910, 140737100824911, 140737100825056, 140736884368832, -1724950539510037784, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fffe8e6d700 (LWP 92795)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x5555565322d0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffe975699d in () at /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737100830464, 1724888966670500584, 140737488342222, 140737488342223, 140737488342368, 140737100826048, -1724921891004431640, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fffe966e700 (LWP 92794)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x55555652c520, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff28e44f1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737109223168, 1724888966670500584, 140737488341838, 140737488341839, 140737488341984, 140737109218752, -1724918591932677400, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fffea9b1700 (LWP 92793)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffea9b0368, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff2f55c1a in () at /lib/x86_64-linux-gnu/libxcb.so.1
#2 0x00007ffff2f5790a in xcb_wait_for_event () at /lib/x86_64-linux-gnu/libxcb.so.1
#3 0x00007fffeaf36298 in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737129420544, 1724888966670500584, 140737488344558, 140737488344559, 140737488344752, 140737129416128, -1724917868767558936, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fffeb653140 (LWP 92786)):
#0 0x00007ffff3a1d680 in QArrayData::shared_null () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#1 0x00007fffeaf1e7e2 in QXcbWindow::handleNativeEvent(xcb_generic_event_t*) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#2 0x00007fffeaf0c242 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#3 0x00007fffeaf0c78a in QXcbConnection::processXcbEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4 0x00007fffeaf37327 in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#5 0x00007ffff28e417d in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff28e4400 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8 0x00007ffff39944b4 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x000055555581de28 in GlobalTrackCache::destroyInstance() () at /usr/include/x86_64-linux-gnu/qt5/QtCore/qflags.h:120
PRETTY_FUNCTION = "static void GlobalTrackCache::destroyInstance()"
pInstance =
#10 0x0000555555b6f520 in TrackCollectionManager::~TrackCollectionManager() (this=0x55555c7449a0, __in_chrg=, __vtt_parm=) at /home/ronso/Downloads/mixxx_source/src/master/src/library/trackcollectionmanager.cpp:163
pWeakTrackSource = {d = 0x55555c7f0e50, value = 0x55555c878090}
#11 0x0000555555b6f8ad in TrackCollectionManager::~TrackCollectionManager() (this=0x55555c7449a0, __in_chrg=, __vtt_parm=) at /home/ronso/Downloads/mixxx_source/src/master/src/library/trackcollectionmanager.cpp:128
#12 0x000055555573a369 in MixxxMainWindow::finalize() (this=0x7fffffffdc40) at /home/ronso/Downloads/mixxx_source/src/master/src/mixxx.cpp:861
t = {m_key = {static null = {}, d = 0x7ffed00048b0}, m_compute = 111, m_running = true, m_time = {t1 = 69040, t2 = 815354551}}
PRETTY_FUNCTION = "void MixxxMainWindow::finalize()"
fullscreenPref =
pSkin = {wp = {d = 0x55555634d380, value = 0x5555653f54c0}}
pMenuBar = {wp = {d = 0x5555566757f0, value = 0x55555667c990}}
#13 0x000055555573b28d in MixxxMainWindow::~MixxxMainWindow() (this=0x7fffffffdc40, __in_chrg=) at /home/ronso/Downloads/mixxx_source/src/master/src/mixxx.cpp:239
#14 0x000055555570cedd in (anonymous namespace)::runMixxx (args=..., app=0x7fffffffdc00) at /home/ronso/Downloads/mixxx_source/src/master/src/main.cpp:28
mainWindow = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff73864e0 QMainWindow::staticMetaObject, stringdata = 0x555556067440 <qt_meta_stringdata_MixxxMainWindow>, data = 0x555556067200 <qt_meta_data_MixxxMainWindow>, static_metacall = 0x555555738640 <MixxxMainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_pWidgetParent = 0x0, m_pLaunchImage = 0x0, m_pSettingsManager = std::unique_ptr = {get() = 0x5555565c9e90}, m_pEffectsManager = 0x555556d37410, m_pEngine = 0x555556a034c0, m_pSkinLoader = 0x55555691dc70, m_pSoundManager = 0x55555aa1d630, m_pPlayerManager = 0x7fffc40150e0, m_pRecordingManager = 0x55555b2d8a50, m_pBroadcastManager = 0x55555b30c9a0, m_pControllerManager = 0x55555c7f5780, m_pGuiTick = 0x55555b30d470, m_pVisualsManager = 0x55555655dda0, m_pVCManager = 0x5555568c9ff0, m_pKeyboard = 0x55555643e490, m_pDbConnectionPool = std::shared_ptr (use count 5, weak count 0) = {get() = 0x5555567fa340}, m_pTrackCollectionManager = 0x55555c7449a0, m_pLibrary = 0x55555c7f5af0, m_pMenuBar = {m_ptr = 0x0}, m_pDeveloperToolsDlg = 0x0, m_pPrefDlg = 0x555559129320, m_pKbdConfig = 0x555556502ec0, m_pKbdConfigEmpty = 0x555556540d00, m_toolTipsCfg = mixxx::TooltipsPreference::TOOLTIPS_ON, m_runtime_timer = {m_key = {static null = {}, d = 0x5555565eb200}, m_compute = 111, m_running = true, m_time = {t1 = 69023, t2 = 997660026}}, m_cmdLineArgs = @0x5555562f7640, m_pTouchShift = 0x5555567f9010, m_inhibitScreensaver = mixxx::ScreenSaverPreference::PREVENT_ON, m_skinCreatedControls = {q_hash = {{d = 0x7ffff3a1f6e0 QHashData::shared_null, e = 0x7ffff3a1f6e0 QHashData::shared_null}}}, static kMicrophoneCount = 4, static kAuxiliaryCount = 4}
console = {}
args = @0x5555562f7640: {m_musicFiles = {<QListSpecialMethods> = {}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x5555563cd860}, d = 0x5555563cd860}}, m_startInFullscreen = false, m_midiDebug = false, m_developer = true, m_safeMode = false, m_debugAssertBreak = false, m_settingsPathSet = true, m_logLevel = mixxx::LogLevel::Debug, m_logFlushLevel = mixxx::LogLevel::Critical, m_locale = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_settingsPath = {static null = {}, d = 0x5555563a52a0}, m_resourcePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_timelinePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}}
app = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff737b620 QApplication::staticMetaObject, stringdata = 0x555556068160 <qt_meta_stringdata_MixxxApplication>, data = 0x555556068120 <qt_meta_data_MixxxApplication>, static_metacall = 0x555555744450 <MixxxApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_rightPressedButtons = 0, m_pTouchShift = 0x0}
exitCode =
PRETTY_FUNCTION = "int main(int, char**)"
#15 main(int, char**) (argc=, argv=) at /home/ronso/Downloads/mixxx_source/src/master/src/main.cpp:110
console = {}
args = @0x5555562f7640: {m_musicFiles = {<QListSpecialMethods> = {}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x5555563cd860}, d = 0x5555563cd860}}, m_startInFullscreen = false, m_midiDebug = false, m_developer = true, m_safeMode = false, m_debugAssertBreak = false, m_settingsPathSet = true, m_logLevel = mixxx::LogLevel::Debug, m_logFlushLevel = mixxx::LogLevel::Critical, m_locale = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_settingsPath = {static null = {}, d = 0x5555563a52a0}, m_resourcePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_timelinePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}}
app = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff737b620 QApplication::staticMetaObject, stringdata = 0x555556068160 <qt_meta_stringdata_MixxxApplication>, data = 0x555556068120 <qt_meta_data_MixxxApplication>, static_metacall = 0x555555744450 <MixxxApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_rightPressedButtons = 0, m_pTouchShift = 0x0}
exitCode =
PRETTY_FUNCTION = "int main(int, char**)"
(gdb)

Thread 106 (Thread 0x7ffe27fe7700 (LWP 92908)):
#0 futex_abstimed_wait_cancelable (private=, abstime=0x7ffe27fe6390, clockid=, expected=0, futex_word=0x5555726bc1a4) at ../sysdeps/nptl/futex-internal.h:320
__ret = -516
__ret =
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe27fe6310, __canceltype = -1140850656, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x5555726bc178, mutex = 0x5555726bc150, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 3
seq = 1
flags =
clockid =
#1 __pthread_cond_wait_common (abstime=0x7ffe27fe6390, clockid=, mutex=0x5555726bc150, cond=0x5555726bc178) at pthread_cond_wait.c:520
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe27fe6310, __canceltype = -1140850656, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x5555726bc178, mutex = 0x5555726bc150, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 3
seq = 1
flags =
clockid =
#2 __pthread_cond_timedwait (cond=0x5555726bc178, mutex=0x5555726bc150, abstime=0x7ffe27fe6390) at pthread_cond_wait.c:665
flags =
clockid =
#3 0x00007ffff377aa7c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377abcb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3778171 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140729569408768, 1724888966670500584, 140737488329630, 140737488329631, 140737488329824, 140729569404352, -1725926918720404760, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 105 (Thread 0x7ffe287e8700 (LWP 92907)):
#0 futex_abstimed_wait_cancelable (private=, abstime=0x7ffe287e7390, clockid=, expected=0, futex_word=0x5555726b70a4) at ../sysdeps/nptl/futex-internal.h:320
__ret = -516
__ret =
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe287e7310, __canceltype = 1, __prev = 0x0}
cbuffer = {wseq = 7, cond = 0x5555726b7078, mutex = 0x5555726b7050, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 7
seq = 3
flags =
clockid =
#1 __pthread_cond_wait_common (abstime=0x7ffe287e7390, clockid=, mutex=0x5555726b7050, cond=0x5555726b7078) at pthread_cond_wait.c:520
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe287e7310, __canceltype = 1, __prev = 0x0}
cbuffer = {wseq = 7, cond = 0x5555726b7078, mutex = 0x5555726b7050, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 7
seq = 3
flags =
clockid =
#2 __pthread_cond_timedwait (cond=0x5555726b7078, mutex=0x5555726b7050, abstime=0x7ffe287e7390) at pthread_cond_wait.c:665
flags =
clockid =
#3 0x00007ffff377aa7c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377abcb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3778171 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140729577801472, 1724888966670500584, 140737488329630, 140737488329631, 140737488329824, 140729577797056, -1725906027462606104, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7fffcac98700 (LWP 92801)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x7ffff77cbfb8) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcac97450, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x7ffff77cbf90, mutex = 0x7ffff77cbf68, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7ffff77cbf68, cond=0x7ffff77cbf90) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcac97450, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x7ffff77cbf90, mutex = 0x7ffff77cbf68, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#2 __pthread_cond_wait (cond=0x7ffff77cbf90, mutex=0x7ffff77cbf68) at pthread_cond_wait.c:647
#3 0x00007ffff76ce5fa in () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#4 0x00007ffff76ce61f in () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736595592960, 1724888966670500584, 140737488344686, 140737488344687, 140737488344688, 140736595588544, -1724987565886225688, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7fffcbfff700 (LWP 92800)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x5555566058c8) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcbffe2e0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x5555566058a0, mutex = 0x555556605878, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x555556605878, cond=0x5555566058a0) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcbffe2e0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x5555566058a0, mutex = 0x555556605878, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#2 __pthread_cond_wait (cond=0x5555566058a0, mutex=0x555556605878) at pthread_cond_wait.c:647
#3 0x00007fffd86365eb in () at /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4 0x00007fffd86361eb in () at /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736615937792, 1724888966670500584, 140737488340670, 140737488340671, 140737488340672, 140736615933376, -1724985723882126616, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7fffda7fc700 (LWP 92799)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffc40025e0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff3994435 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff393b3ab in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3773785 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff3c16efa in () at /lib/x86_64-linux-gnu/libQt5DBus.so.5
#7 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#8 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736859195136, 1724888966670500584, 140737488345086, 140737488345087, 140737488345280, 140736859190720, -1724951640632278296, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#9 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7fffdaffd700 (LWP 92798)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x5555565aaef0) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffdaffc2d0, __canceltype = 2, __prev = 0x0}
cbuffer = {wseq = 100, cond = 0x5555565aaec8, mutex = 0x5555565aaea0, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 100
seq = 50
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5555565aaea0, cond=0x5555565aaec8) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffdaffc2d0, __canceltype = 2, __prev = 0x0}
cbuffer = {wseq = 100, cond = 0x5555565aaec8, mutex = 0x5555565aaea0, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 100
seq = 50
#2 __pthread_cond_wait (cond=0x5555565aaec8, mutex=0x5555565aaea0) at pthread_cond_wait.c:647
#3 0x00007ffff377ab0f in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377ac01 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x0000555555854557 in StatsManager::run() (this=0x55555653bc50) at /home/ronso/Downloads/mixxx_source/src/master/src/util/statsmanager.cpp:245
PRETTY_FUNCTION = "virtual void StatsManager::run()"
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736867587840, 1724888966670500584, 140737488345486, 140737488345487, 140737488345680, 140736867583424, -1724952737459551512, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fffdbfff700 (LWP 92796)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffd4005a30, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e46f3 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff2adbf8a in () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736884373248, 1724888966670500584, 140737100824910, 140737100824911, 140737100825056, 140736884368832, -1724950539510037784, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fffe8e6d700 (LWP 92795)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x5555565322d0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffe975699d in () at /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737100830464, 1724888966670500584, 140737488342222, 140737488342223, 140737488342368, 140737100826048, -1724921891004431640, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fffe966e700 (LWP 92794)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x55555652c520, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff28e44f1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737109223168, 1724888966670500584, 140737488341838, 140737488341839, 140737488341984, 140737109218752, -1724918591932677400, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fffea9b1700 (LWP 92793)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffea9b0368, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff2f55c1a in () at /lib/x86_64-linux-gnu/libxcb.so.1
#2 0x00007ffff2f5790a in xcb_wait_for_event () at /lib/x86_64-linux-gnu/libxcb.so.1
#3 0x00007fffeaf36298 in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737129420544, 1724888966670500584, 140737488344558, 140737488344559, 140737488344752, 140737129416128, -1724917868767558936, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fffeb653140 (LWP 92786)):
#0 0x00007ffff3a1d680 in QArrayData::shared_null () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#1 0x00007fffeaf1e7e2 in QXcbWindow::handleNativeEvent(xcb_generic_event_t*) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#2 0x00007fffeaf0c242 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#3 0x00007fffeaf0c78a in QXcbConnection::processXcbEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4 0x00007fffeaf37327 in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#5 0x00007ffff28e417d in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff28e4400 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8 0x00007ffff39944b4 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x000055555581de28 in GlobalTrackCache::destroyInstance() () at /usr/include/x86_64-linux-gnu/qt5/QtCore/qflags.h:120
PRETTY_FUNCTION = "static void GlobalTrackCache::destroyInstance()"
pInstance =
#10 0x0000555555b6f520 in TrackCollectionManager::~TrackCollectionManager() (this=0x55555c7449a0, __in_chrg=, __vtt_parm=) at /home/ronso/Downloads/mixxx_source/src/master/src/library/trackcollectionmanager.cpp:163
pWeakTrackSource = {d = 0x55555c7f0e50, value = 0x55555c878090}
#11 0x0000555555b6f8ad in TrackCollectionManager::~TrackCollectionManager() (this=0x55555c7449a0, __in_chrg=, __vtt_parm=) at /home/ronso/Downloads/mixxx_source/src/master/src/library/trackcollectionmanager.cpp:128
#12 0x000055555573a369 in MixxxMainWindow::finalize() (this=0x7fffffffdc40) at /home/ronso/Downloads/mixxx_source/src/master/src/mixxx.cpp:861
t = {m_key = {static null = {}, d = 0x7ffed00048b0}, m_compute = 111, m_running = true, m_time = {t1 = 69040, t2 = 815354551}}
PRETTY_FUNCTION = "void MixxxMainWindow::finalize()"
fullscreenPref =
pSkin = {wp = {d = 0x55555634d380, value = 0x5555653f54c0}}
pMenuBar = {wp = {d = 0x5555566757f0, value = 0x55555667c990}}
#13 0x000055555573b28d in MixxxMainWindow::~MixxxMainWindow() (this=0x7fffffffdc40, __in_chrg=) at /home/ronso/Downloads/mixxx_source/src/master/src/mixxx.cpp:239
#14 0x000055555570cedd in (anonymous namespace)::runMixxx (args=..., app=0x7fffffffdc00) at /home/ronso/Downloads/mixxx_source/src/master/src/main.cpp:28
mainWindow = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff73864e0 QMainWindow::staticMetaObject, stringdata = 0x555556067440 <qt_meta_stringdata_MixxxMainWindow>, data = 0x555556067200 <qt_meta_data_MixxxMainWindow>, static_metacall = 0x555555738640 <MixxxMainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_pWidgetParent = 0x0, m_pLaunchImage = 0x0, m_pSettingsManager = std::unique_ptr = {get() = 0x5555565c9e90}, m_pEffectsManager = 0x555556d37410, m_pEngine = 0x555556a034c0, m_pSkinLoader = 0x55555691dc70, m_pSoundManager = 0x55555aa1d630, m_pPlayerManager = 0x7fffc40150e0, m_pRecordingManager = 0x55555b2d8a50, m_pBroadcastManager = 0x55555b30c9a0, m_pControllerManager = 0x55555c7f5780, m_pGuiTick = 0x55555b30d470, m_pVisualsManager = 0x55555655dda0, m_pVCManager = 0x5555568c9ff0, m_pKeyboard = 0x55555643e490, m_pDbConnectionPool = std::shared_ptr (use count 5, weak count 0) = {get() = 0x5555567fa340}, m_pTrackCollectionManager = 0x55555c7449a0, m_pLibrary = 0x55555c7f5af0, m_pMenuBar = {m_ptr = 0x0}, m_pDeveloperToolsDlg = 0x0, m_pPrefDlg = 0x555559129320, m_pKbdConfig = 0x555556502ec0, m_pKbdConfigEmpty = 0x555556540d00, m_toolTipsCfg = mixxx::TooltipsPreference::TOOLTIPS_ON, m_runtime_timer = {m_key = {static null = {}, d = 0x5555565eb200}, m_compute = 111, m_running = true, m_time = {t1 = 69023, t2 = 997660026}}, m_cmdLineArgs = @0x5555562f7640, m_pTouchShift = 0x5555567f9010, m_inhibitScreensaver = mixxx::ScreenSaverPreference::PREVENT_ON, m_skinCreatedControls = {q_hash = {{d = 0x7ffff3a1f6e0 QHashData::shared_null, e = 0x7ffff3a1f6e0 QHashData::shared_null}}}, static kMicrophoneCount = 4, static kAuxiliaryCount = 4}
console = {}
args = @0x5555562f7640: {m_musicFiles = {<QListSpecialMethods> = {}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x5555563cd860}, d = 0x5555563cd860}}, m_startInFullscreen = false, m_midiDebug = false, m_developer = true, m_safeMode = false, m_debugAssertBreak = false, m_settingsPathSet = true, m_logLevel = mixxx::LogLevel::Debug, m_logFlushLevel = mixxx::LogLevel::Critical, m_locale = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_settingsPath = {static null = {}, d = 0x5555563a52a0}, m_resourcePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_timelinePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}}
app = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff737b620 QApplication::staticMetaObject, stringdata = 0x555556068160 <qt_meta_stringdata_MixxxApplication>, data = 0x555556068120 <qt_meta_data_MixxxApplication>, static_metacall = 0x555555744450 <MixxxApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_rightPressedButtons = 0, m_pTouchShift = 0x0}
exitCode =
PRETTY_FUNCTION = "int main(int, char**)"
#15 main(int, char**) (argc=, argv=) at /home/ronso/Downloads/mixxx_source/src/master/src/main.cpp:110
console = {}
args = @0x5555562f7640: {m_musicFiles = {<QListSpecialMethods> = {}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x5555563cd860}, d = 0x5555563cd860}}, m_startInFullscreen = false, m_midiDebug = false, m_developer = true, m_safeMode = false, m_debugAssertBreak = false, m_settingsPathSet = true, m_logLevel = mixxx::LogLevel::Debug, m_logFlushLevel = mixxx::LogLevel::Critical, m_locale = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_settingsPath = {static null = {}, d = 0x5555563a52a0}, m_resourcePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_timelinePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}}
app = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff737b620 QApplication::staticMetaObject, stringdata = 0x555556068160 <qt_meta_stringdata_MixxxApplication>, data = 0x555556068120 <qt_meta_data_MixxxApplication>, static_metacall = 0x555555744450 <MixxxApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_rightPressedButtons = 0, m_pTouchShift = 0x0}
exitCode =
PRETTY_FUNCTION = "int main(int, char**)"
(gdb)

Thread 106 (Thread 0x7ffe27fe7700 (LWP 92908)):
#0 futex_abstimed_wait_cancelable (private=, abstime=0x7ffe27fe6390, clockid=, expected=0, futex_word=0x5555726bc1a4) at ../sysdeps/nptl/futex-internal.h:320
__ret = -516
__ret =
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe27fe6310, __canceltype = -1140850656, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x5555726bc178, mutex = 0x5555726bc150, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 3
seq = 1
flags =
clockid =
#1 __pthread_cond_wait_common (abstime=0x7ffe27fe6390, clockid=, mutex=0x5555726bc150, cond=0x5555726bc178) at pthread_cond_wait.c:520
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe27fe6310, __canceltype = -1140850656, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x5555726bc178, mutex = 0x5555726bc150, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 3
seq = 1
flags =
clockid =
#2 __pthread_cond_timedwait (cond=0x5555726bc178, mutex=0x5555726bc150, abstime=0x7ffe27fe6390) at pthread_cond_wait.c:665
flags =
clockid =
#3 0x00007ffff377aa7c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377abcb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3778171 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140729569408768, 1724888966670500584, 140737488329630, 140737488329631, 140737488329824, 140729569404352, -1725926918720404760, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 105 (Thread 0x7ffe287e8700 (LWP 92907)):
#0 futex_abstimed_wait_cancelable (private=, abstime=0x7ffe287e7390, clockid=, expected=0, futex_word=0x5555726b70a4) at ../sysdeps/nptl/futex-internal.h:320
__ret = -516
__ret =
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe287e7310, __canceltype = 1, __prev = 0x0}
cbuffer = {wseq = 7, cond = 0x5555726b7078, mutex = 0x5555726b7050, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 7
seq = 3
flags =
clockid =
#1 __pthread_cond_wait_common (abstime=0x7ffe287e7390, clockid=, mutex=0x5555726b7050, cond=0x5555726b7078) at pthread_cond_wait.c:520
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7ffe287e7310, __canceltype = 1, __prev = 0x0}
cbuffer = {wseq = 7, cond = 0x5555726b7078, mutex = 0x5555726b7050, private = 0}
err =
g = 1
flags =
g1_start =
maxspin = 0
signals =
result = 0
wseq = 7
seq = 3
flags =
clockid =
#2 __pthread_cond_timedwait (cond=0x5555726b7078, mutex=0x5555726b7050, abstime=0x7ffe287e7390) at pthread_cond_wait.c:665
flags =
clockid =
#3 0x00007ffff377aa7c in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377abcb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3778171 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140729577801472, 1724888966670500584, 140737488329630, 140737488329631, 140737488329824, 140729577797056, -1725906027462606104, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7fffcac98700 (LWP 92801)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x7ffff77cbfb8) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcac97450, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x7ffff77cbf90, mutex = 0x7ffff77cbf68, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7ffff77cbf68, cond=0x7ffff77cbf90) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcac97450, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x7ffff77cbf90, mutex = 0x7ffff77cbf68, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#2 __pthread_cond_wait (cond=0x7ffff77cbf90, mutex=0x7ffff77cbf68) at pthread_cond_wait.c:647
#3 0x00007ffff76ce5fa in () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#4 0x00007ffff76ce61f in () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736595592960, 1724888966670500584, 140737488344686, 140737488344687, 140737488344688, 140736595588544, -1724987565886225688, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7fffcbfff700 (LWP 92800)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x5555566058c8) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcbffe2e0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x5555566058a0, mutex = 0x555556605878, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x555556605878, cond=0x5555566058a0) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffcbffe2e0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 0, cond = 0x5555566058a0, mutex = 0x555556605878, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 0
seq = 0
#2 __pthread_cond_wait (cond=0x5555566058a0, mutex=0x555556605878) at pthread_cond_wait.c:647
#3 0x00007fffd86365eb in () at /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4 0x00007fffd86361eb in () at /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736615937792, 1724888966670500584, 140737488340670, 140737488340671, 140737488340672, 140736615933376, -1724985723882126616, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7fffda7fc700 (LWP 92799)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffc40025e0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff3994435 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff393b3ab in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff3773785 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6 0x00007ffff3c16efa in () at /lib/x86_64-linux-gnu/libQt5DBus.so.5
#7 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#8 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736859195136, 1724888966670500584, 140737488345086, 140737488345087, 140737488345280, 140736859190720, -1724951640632278296, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#9 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7fffdaffd700 (LWP 92798)):
#0 futex_wait_cancelable (private=, expected=0, futex_word=0x5555565aaef0) at ../sysdeps/nptl/futex-internal.h:183
__ret = -512
oldtype = 0
err =
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffdaffc2d0, __canceltype = 2, __prev = 0x0}
cbuffer = {wseq = 100, cond = 0x5555565aaec8, mutex = 0x5555565aaea0, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 100
seq = 50
#1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5555565aaea0, cond=0x5555565aaec8) at pthread_cond_wait.c:508
spin = 0
buffer = {__routine = 0x7ffff32e0050 <__condvar_cleanup_waiting>, __arg = 0x7fffdaffc2d0, __canceltype = 2, __prev = 0x0}
cbuffer = {wseq = 100, cond = 0x5555565aaec8, mutex = 0x5555565aaea0, private = 0}
err =
g = 0
flags =
g1_start =
signals =
result = 0
wseq = 100
seq = 50
#2 __pthread_cond_wait (cond=0x5555565aaec8, mutex=0x5555565aaea0) at pthread_cond_wait.c:647
#3 0x00007ffff377ab0f in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff377ac01 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x0000555555854557 in StatsManager::run() (this=0x55555653bc50) at /home/ronso/Downloads/mixxx_source/src/master/src/util/statsmanager.cpp:245
PRETTY_FUNCTION = "virtual void StatsManager::run()"
#6 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736867587840, 1724888966670500584, 140737488345486, 140737488345487, 140737488345680, 140736867583424, -1724952737459551512, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#8 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fffdbfff700 (LWP 92796)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffd4005a30, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e46f3 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff2adbf8a in () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736884373248, 1724888966670500584, 140737100824910, 140737100824911, 140737100825056, 140736884368832, -1724950539510037784, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fffe8e6d700 (LWP 92795)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x5555565322d0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffe975699d in () at /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737100830464, 1724888966670500584, 140737488342222, 140737488342223, 140737488342368, 140737100826048, -1724921891004431640, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fffe966e700 (LWP 92794)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x55555652c520, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff28e436e in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff28e44f1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff290dad1 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737109223168, 1724888966670500584, 140737488341838, 140737488341839, 140737488341984, 140737109218752, -1724918591932677400, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fffea9b1700 (LWP 92793)):
#0 0x00007ffff31f199f in __GI___poll (fds=0x7fffea9b0368, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
resultvar = 18446744073709551100
sc_cancel_oldtype = 0
#1 0x00007ffff2f55c1a in () at /lib/x86_64-linux-gnu/libxcb.so.1
#2 0x00007ffff2f5790a in xcb_wait_for_event () at /lib/x86_64-linux-gnu/libxcb.so.1
#3 0x00007fffeaf36298 in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4 0x00007ffff37749d2 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff32d9609 in start_thread (arg=) at pthread_create.c:477
ret =
pd =
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737129420544, 1724888966670500584, 140737488344558, 140737488344559, 140737488344752, 140737129416128, -1724917868767558936, -1724897093497077016}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = 0
#6 0x00007ffff31fe133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fffeb653140 (LWP 92786)):
#0 0x00007ffff3a1d680 in QArrayData::shared_null () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#1 0x00007fffeaf1e7e2 in QXcbWindow::handleNativeEvent(xcb_generic_event_t*) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#2 0x00007fffeaf0c242 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#3 0x00007fffeaf0c78a in QXcbConnection::processXcbEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4 0x00007fffeaf37327 in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#5 0x00007ffff28e417d in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff28e4400 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff28e44a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8 0x00007ffff39944b4 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x000055555581de28 in GlobalTrackCache::destroyInstance() () at /usr/include/x86_64-linux-gnu/qt5/QtCore/qflags.h:120
PRETTY_FUNCTION = "static void GlobalTrackCache::destroyInstance()"
pInstance =
#10 0x0000555555b6f520 in TrackCollectionManager::~TrackCollectionManager() (this=0x55555c7449a0, __in_chrg=, __vtt_parm=) at /home/ronso/Downloads/mixxx_source/src/master/src/library/trackcollectionmanager.cpp:163
pWeakTrackSource = {d = 0x55555c7f0e50, value = 0x55555c878090}
#11 0x0000555555b6f8ad in TrackCollectionManager::~TrackCollectionManager() (this=0x55555c7449a0, __in_chrg=, __vtt_parm=) at /home/ronso/Downloads/mixxx_source/src/master/src/library/trackcollectionmanager.cpp:128
#12 0x000055555573a369 in MixxxMainWindow::finalize() (this=0x7fffffffdc40) at /home/ronso/Downloads/mixxx_source/src/master/src/mixxx.cpp:861
t = {m_key = {static null = {}, d = 0x7ffed00048b0}, m_compute = 111, m_running = true, m_time = {t1 = 69040, t2 = 815354551}}
PRETTY_FUNCTION = "void MixxxMainWindow::finalize()"
fullscreenPref =
pSkin = {wp = {d = 0x55555634d380, value = 0x5555653f54c0}}
pMenuBar = {wp = {d = 0x5555566757f0, value = 0x55555667c990}}
#13 0x000055555573b28d in MixxxMainWindow::~MixxxMainWindow() (this=0x7fffffffdc40, __in_chrg=) at /home/ronso/Downloads/mixxx_source/src/master/src/mixxx.cpp:239
#14 0x000055555570cedd in (anonymous namespace)::runMixxx (args=..., app=0x7fffffffdc00) at /home/ronso/Downloads/mixxx_source/src/master/src/main.cpp:28
mainWindow = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff73864e0 QMainWindow::staticMetaObject, stringdata = 0x555556067440 <qt_meta_stringdata_MixxxMainWindow>, data = 0x555556067200 <qt_meta_data_MixxxMainWindow>, static_metacall = 0x555555738640 <MixxxMainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_pWidgetParent = 0x0, m_pLaunchImage = 0x0, m_pSettingsManager = std::unique_ptr = {get() = 0x5555565c9e90}, m_pEffectsManager = 0x555556d37410, m_pEngine = 0x555556a034c0, m_pSkinLoader = 0x55555691dc70, m_pSoundManager = 0x55555aa1d630, m_pPlayerManager = 0x7fffc40150e0, m_pRecordingManager = 0x55555b2d8a50, m_pBroadcastManager = 0x55555b30c9a0, m_pControllerManager = 0x55555c7f5780, m_pGuiTick = 0x55555b30d470, m_pVisualsManager = 0x55555655dda0, m_pVCManager = 0x5555568c9ff0, m_pKeyboard = 0x55555643e490, m_pDbConnectionPool = std::shared_ptr (use count 5, weak count 0) = {get() = 0x5555567fa340}, m_pTrackCollectionManager = 0x55555c7449a0, m_pLibrary = 0x55555c7f5af0, m_pMenuBar = {m_ptr = 0x0}, m_pDeveloperToolsDlg = 0x0, m_pPrefDlg = 0x555559129320, m_pKbdConfig = 0x555556502ec0, m_pKbdConfigEmpty = 0x555556540d00, m_toolTipsCfg = mixxx::TooltipsPreference::TOOLTIPS_ON, m_runtime_timer = {m_key = {static null = {}, d = 0x5555565eb200}, m_compute = 111, m_running = true, m_time = {t1 = 69023, t2 = 997660026}}, m_cmdLineArgs = @0x5555562f7640, m_pTouchShift = 0x5555567f9010, m_inhibitScreensaver = mixxx::ScreenSaverPreference::PREVENT_ON, m_skinCreatedControls = {q_hash = {{d = 0x7ffff3a1f6e0 QHashData::shared_null, e = 0x7ffff3a1f6e0 QHashData::shared_null}}}, static kMicrophoneCount = 4, static kAuxiliaryCount = 4}
console = {}
args = @0x5555562f7640: {m_musicFiles = {<QListSpecialMethods> = {}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x5555563cd860}, d = 0x5555563cd860}}, m_startInFullscreen = false, m_midiDebug = false, m_developer = true, m_safeMode = false, m_debugAssertBreak = false, m_settingsPathSet = true, m_logLevel = mixxx::LogLevel::Debug, m_logFlushLevel = mixxx::LogLevel::Critical, m_locale = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_settingsPath = {static null = {}, d = 0x5555563a52a0}, m_resourcePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_timelinePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}}
app = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff737b620 QApplication::staticMetaObject, stringdata = 0x555556068160 <qt_meta_stringdata_MixxxApplication>, data = 0x555556068120 <qt_meta_data_MixxxApplication>, static_metacall = 0x555555744450 <MixxxApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_rightPressedButtons = 0, m_pTouchShift = 0x0}
exitCode =
PRETTY_FUNCTION = "int main(int, char**)"
#15 main(int, char**) (argc=, argv=) at /home/ronso/Downloads/mixxx_source/src/master/src/main.cpp:110
console = {}
args = @0x5555562f7640: {m_musicFiles = {<QListSpecialMethods> = {}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x5555563cd860}, d = 0x5555563cd860}}, m_startInFullscreen = false, m_midiDebug = false, m_developer = true, m_safeMode = false, m_debugAssertBreak = false, m_settingsPathSet = true, m_logLevel = mixxx::LogLevel::Debug, m_logFlushLevel = mixxx::LogLevel::Critical, m_locale = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_settingsPath = {static null = {}, d = 0x5555563a52a0}, m_resourcePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}, m_timelinePath = {static null = {}, d = 0x7ffff3a1d680 QArrayData::shared_null}}
app = { = {}, static staticMetaObject = {d = {superdata = 0x7ffff737b620 QApplication::staticMetaObject, stringdata = 0x555556068160 <qt_meta_stringdata_MixxxApplication>, data = 0x555556068120 <qt_meta_data_MixxxApplication>, static_metacall = 0x555555744450 <MixxxApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_rightPressedButtons = 0, m_pTouchShift = 0x0}
exitCode =
PRETTY_FUNCTION = "int main(int, char**)"

</details>

src/widget/wvumeter.cpp Outdated Show resolved Hide resolved
src/widget/wvumeter.cpp Outdated Show resolved Hide resolved
@ronso0
Copy link
Member

ronso0 commented Sep 13, 2022

Btw I don't see the translucent level artifacts anymore.

src/widget/wvumeter.cpp Outdated Show resolved Hide resolved
src/widget/wvumeter.cpp Outdated Show resolved Hide resolved
@ronso0
Copy link
Member

ronso0 commented Sep 13, 2022

Shade is fixed with b3559f8
WidgetGroups with absolute position need a <Size> to avoid issues with child widgets, sometimes also an empty <Children/> node if the are used as spacers with a specific color.

@ronso0
Copy link
Member

ronso0 commented Sep 13, 2022

FYI with Tango I can shutdown cleanly -- with the other skins I get this segfault

Qt 5.12.8 btw

src/widget/wvumeter.cpp Outdated Show resolved Hide resolved
@m0dB m0dB marked this pull request as draft September 14, 2022 09:40
@JosepMaJAZ
Copy link
Contributor

JosepMaJAZ commented Oct 2, 2022

Tested on Windows, the build generated by github actions. ( https://github.com/mixxxdj/mixxx/actions/runs/3151963589 )

It works and the CPU usage seems to be the same than previously (compared with task manager both CPU and GPU)

@m0dB
Copy link
Contributor Author

m0dB commented Oct 2, 2022

Gràcies, @JosepMaJAZ ! I'd say this confirms that we can safely make it the default. I'll make the change.

@daschuer
Copy link
Member

daschuer commented Oct 3, 2022

Unfortunately there must have been happen a wrong rebase/merge. See:
Bildschirmfoto vom 2022-10-03 18-56-46

I have rebated your branch again to get rid of the duplicated commits and added my commit that makes the workaround conditionally. I suggest to merge m0dB#3 and after that reset you branch to b8dff32 and force push.

I have decided to not limit the fix tho <= 5.15.3, because it is unlikely that the issue will be fixed in future versions.
The workaround is less harmful compared to loosing data due to the segfault when compiled against a future Qt version.

@m0dB
Copy link
Contributor Author

m0dB commented Oct 4, 2022

@daschuer just to make sure, is this expected?

$ git reset b8dff32
Unstaged changes after reset:
M	CMakeLists.txt
M	src/sources/soundsourceflac.cpp
M	tools/windows_buildenv.bat

Should I add and commit those before I force push?

@daschuer
Copy link
Member

daschuer commented Oct 4, 2022

Yes, this is a left over from the 2.3 branch. Since we merge to main they can be removed.
Just git push -f and we can merge this PR

@m0dB
Copy link
Contributor Author

m0dB commented Oct 4, 2022

done

Copy link
Member

@daschuer daschuer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect! Thank you.

@daschuer daschuer merged commit a0ffb6b into mixxxdj:2.3 Oct 4, 2022
@ronso0
Copy link
Member

ronso0 commented Oct 18, 2022

Unfortunately this has still some painting issues when switching or reloading skins:
image
image

and with transparency + parents background color.
Latency meter in LateNight
2.3 + main: the red part on the left looks like wrapped around oveshoot from the right edge?
image
main only: only the green part is the actual level, yellow is the previously active overload indicator underneath (which is 1px wider and taller than the meter, so only the part underneath the meter is not updated it seems)
image

@m0dB
Copy link
Contributor Author

m0dB commented Oct 18, 2022

Thank you very much @ronso0 ! Did your changes fix all issues you were seeing ? If not, let me know and I will have a look.

On a side note, I have another branch in the works that uses QOpenGL classes, also for the VU meters. It would be great if you can have a look at that as well. No hurry, it's still work in progress (e.g. things like switching skins or clean shutdown is not something I am worrying about yet). It runs pretty smooth on macOS (occasional dropped frames at 60 fps, no UI lag) but I haven't tried on linux. (It could very well be that linux requires setting up the QSurface in a particular way, or that a QOpenGLWidget implementation is better than my QOpenGLWindow based widget, which is something I want to try too). In any case, I have made an effort to make it coexist (currently with a compile time option) with the QGLWidget code. I have experimented with a way to make it perfectly smooth (no dropped frames at all), by rendering directly from the vsyncthread, but I first want to finish the rest.

If you (or anyone) want to give it a try:
https://github.com/m0dB/mixxx/tree/qopengl_renderers
I am compiling against Qt 5.15.2, but I guess any 5.15 should work. Run cmake with -DQOPENGL=ON , and select the waveform type "RGB (QOpenGL) (GLSL)". YMMV!

@ronso0
Copy link
Member

ronso0 commented Oct 18, 2022

#10978 fixes only works around the background issue
image

I'd appreciate if you could take a look at the other issues.

@m0dB
Copy link
Contributor Author

m0dB commented Oct 18, 2022

Ok, I see! Yes, on macOS I have the same yellow CPU meter, I thought this was because the skin changed 😅 . I'll fix it ASAP.

@m0dB
Copy link
Contributor Author

m0dB commented Oct 18, 2022

@ronso0 Luckily it was just a very stupid mistake:

-            const double widgetPeakHoldSize = widgetWidth * pixmapPeakHoldSize / pixmapHeight;
+            const double widgetPeakHoldSize = widgetWidth * pixmapPeakHoldSize / pixmapWidth;

I'll create a PR in a moment.

@m0dB
Copy link
Contributor Author

m0dB commented Oct 18, 2022

@ronso0 #10979

@JoergAtGithub
Copy link
Member

In our forum, a 2.3.4 regression is reported, with a custom skin, which uses horizontal VU-Meters: https://mixxx.discourse.group/t/2-3-4-causes-black-squares-on-level-meter-traktmixxx-skin/26808/

@m0dB
Copy link
Contributor Author

m0dB commented Mar 7, 2023

I will try to look into this in the weekend.

@ronso0
Copy link
Member

ronso0 commented Mar 12, 2023

I ran into several segfaults while trying to debug https://mixxx.discourse.group/t/2-3-4-causes-black-squares-on-level-meter-traktmixxx-skin/26808/, see #11360
So I think we need a quick fix asap:
make the VU meters default to the standart version, and only use the GL version on macOS.

I'm afraid I'm not of much help figuring out the root cause...

napaalm added a commit to napaalm/mixxx that referenced this pull request Mar 23, 2023
napaalm added a commit to napaalm/mixxx that referenced this pull request Mar 23, 2023
napaalm added a commit to napaalm/mixxx that referenced this pull request Mar 23, 2023
napaalm added a commit to napaalm/mixxx that referenced this pull request Mar 24, 2023
napaalm added a commit to napaalm/mixxx that referenced this pull request Mar 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants