DEBUG ASSERT in effects_refactoring branch

Bug #1947615 reported by Daniel Schürmann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Committed
Undecided
ronso0

Bug Description

I was able to catch a back trace of it:

critical[Main] DEBUG ASSERT: "pModel" in function void DlgPrefEffects::effectsTableItemSelected(const QModelIndex&) at /home/daniel/workspace/i18n/src/preferences/dialog/dlgprefeffects.cpp:169

#0 raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff347c1f8 in qt_message_print(QtMsgType, QMessageLogContext const&, QString const&) (msgType=QtCriticalMsg, context=..., message=...) at global/qlogging.cpp:1836
#2 0x00007ffff347c319 in qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtCriticalMsg, context=..., msg=<optimized out>, ap=<optimized out>) at global/qlogging.cpp:373
#3 0x00007ffff344b6cc in QMessageLogger::critical(char const*, ...) const (this=this@entry=0x7fffffffc7b0, msg=msg@entry=0x55555625ea88 "%s: \"%s\" in function %s at %s:%d") at global/qlogging.cpp:767
#4 0x00005555556602df in mixxx_debug_assert(char const*, char const*, int, char const*) (assertion=assertion@entry=0x555556310448 "pModel", file=file@entry=0x5555563102b0 "/home/daniel/workspace/i18n/src/preferences/dialog/dlgprefeffects.cpp", line=line@entry=169, function=function@entry=0x555556310268 "void DlgPrefEffects::effectsTableItemSelected(const QModelIndex&)") at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlogging.h:91
#5 0x0000555555705de6 in mixxx_debug_assert_return_true(char const*, char const*, int, char const*) (function=0x555556310268 "void DlgPrefEffects::effectsTableItemSelected(const QModelIndex&)", line=169, file=0x5555563102b0 "/home/daniel/workspace/i18n/src/preferences/dialog/dlgprefeffects.cpp", assertion=0x555556310448 "pModel") at /home/daniel/workspace/i18n/src/util/assert.h:18
#6 DlgPrefEffects::effectsTableItemSelected(QModelIndex const&) (this=<optimized out>, selected=...) at /home/daniel/workspace/i18n/src/preferences/dialog/dlgprefeffects.cpp:169
#7 0x00007ffff3678458 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffffc920, r=0x555562a9a670, this=0x555562ac0bc0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#8 QMetaObject::activate(QObject*, int, int, void**) (sender=0x555562ac1bd0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3784
#9 0x00007ffff3608087 in QItemSelectionModel::currentRowChanged(QModelIndex const&, QModelIndex const&) (this=this@entry=0x555562ac1bd0, _t1=..., _t2=...) at .moc/moc_qitemselectionmodel.cpp:472
#10 0x00007ffff3610897 in QItemSelectionModelPrivate::_q_rowsAboutToBeRemoved(QModelIndex const&, int, int) (this=0x555562ac2000, parent=..., start=0, end=19) at itemmodels/qitemselectionmodel.cpp:737
#11 0x00007ffff3612826 in QItemSelectionModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=0x7fffffffcc30) at itemmodels/qitemselectionmodel.h:148
#12 0x00007ffff3678300 in QMetaObject::activate(QObject*, int, int, void**) (sender=0x555562abf670, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3804
#13 0x00007ffff35f8d22 in QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int, QAbstractItemModel::QPrivateSignal) (this=this@entry=0x555562abf670, _t1=..., _t2=<optimized out>, _t2@entry=0, _t3=<optimized out>, _t3@entry=19, _t4=...) at .moc/moc_qabstractitemmodel.cpp:598
#14 0x00007ffff3600e1c in QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) (this=this@entry=0x555562abf670, parent=..., first=first@entry=0, last=last@entry=19) at itemmodels/qabstractitemmodel.cpp:2790
#15 0x0000555555ab4a86 in EffectManifestTableModel::removeRows(int, int, QModelIndex const&) (this=0x555562abf670, row=0, count=<optimized out>, parent=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qabstractitemmodel.h:60
#16 0x0000555555ab4204 in EffectManifestTableModel::setList(QList<QSharedPointer<EffectManifest> > const&) (this=0x555562abf670, newList=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:170
#17 0x0000555555eb8186 in DlgPrefEffects::slotUpdate() (this=0x555562a9a670) at /home/daniel/workspace/i18n/src/preferences/dialog/dlgprefeffects.cpp:95
#18 0x0000555555a5c902 in DlgPreferences::slotButtonPressed(QAbstractButton*) (this=0x55555771cee0, pButton=<optimized out>) at /home/daniel/workspace/i18n/src/preferences/dialog/dlgpreferences.cpp:388

This has happens after clicking on the "Restore defaults" button in the effect preferences.
Resuming is possible without a crash.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

The same assertion happens reproducible if I try to make all hidden effects visible at one.
By dragging all from the hidden effects to the visible effects.

This happens also if you make one effect visible and than close and reopen the preferences window.

Revision history for this message
ronso0 (ronso0) wrote :
Changed in mixxx:
status: New → Confirmed
assignee: nobody → ronso0 (ronso0)
status: Confirmed → In Progress
Be (be.ing)
Changed in mixxx:
status: In Progress → Fix Committed
Revision history for this message
ronso0 (ronso0) wrote :

oh, I should probably restore ExtendedSelection for the effect list to re-enable dragging multiple effects/chains. But we'd need to clear the effect/chain info table then.

Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/10563

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.