Version: 2.7.999 (using KDE 4.7.0) OS: Linux As indicated by the backtrace, the real problem is ManageProfilesDialog::tableSelectionChanged() cause itself get invoked infinitely after pressing Ctrl+A. A quick fix is removing the last line within ManageProfilesDialog::tableSelectionChanged(): _ui->sessionTable->selectRow(rowIndex); , but maybe that is not the right fix. Reproducible: Always Steps to Reproduce: 1). open the 'Config Profiles' dialog 2). press Ctrl+A Actual Results: konsole crashed Expected Results: All profiles are selected, or nothing happens.At least konsole should not crash. top of the backtrace: #0 0xb73f5222 in ?? () from /usr/lib/libQtCore.so.4 #1 0xb73f528b in QListData::detach_grow(int*, int) () from /usr/lib/libQtCore.so.4 #2 0xb6fb18ff in ?? () from /usr/lib/libQtGui.so.4 #3 0xb6fb1c77 in ?? () from /usr/lib/libQtGui.so.4 #4 0xb7001a00 in QItemSelection::select(QModelIndex const&, QModelIndex const&) () from /usr/lib/libQtGui.so.4 #5 0xb7001be0 in QItemSelection::QItemSelection(QModelIndex const&, QModelIndex const&) () from /usr/lib/libQtGui.so.4 #6 0xb7006a46 in ?? () from /usr/lib/libQtGui.so.4 #7 0xb7006e43 in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib/libQtGui.so.4 #8 0xb6fd89cc in ?? () from /usr/lib/libQtGui.so.4 #9 0xb6fd8b92 in QTableView::selectRow(int) () from /usr/lib/libQtGui.so.4 #10 0xb7da18eb in Konsole::ManageProfilesDialog::tableSelectionChanged (this=0x847d260) at /mnt/personal/code/@abs/konsole/src/konsole-build/src/ManageProfilesDialog.cpp:309 #11 0xb7da3143 in Konsole::ManageProfilesDialog::qt_metacall (this=0x847d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbf800594) at /mnt/personal/code/@abs/konsole/src/konsole-build/src/ManageProfilesDialog.moc:100 #12 0xb74d5eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 #13 0xb74e4dda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 #14 0xb6fffd1d in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQtGui.so.4 #15 0xb7005962 in QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQtGui.so.4 #16 0xb7006f24 in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib/libQtGui.so.4 #17 0xb6fd89cc in ?? () from /usr/lib/libQtGui.so.4 #18 0xb6fd8b92 in QTableView::selectRow(int) () from /usr/lib/libQtGui.so.4 #19 0xb7da18eb in Konsole::ManageProfilesDialog::tableSelectionChanged (this=0x847d260) at /mnt/personal/code/@abs/konsole/src/konsole-build/src/ManageProfilesDialog.cpp:309 #20 0xb7da3143 in Konsole::ManageProfilesDialog::qt_metacall (this=0x847d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbf800914) at /mnt/personal/code/@abs/konsole/src/konsole-build/src/ManageProfilesDialog.moc:100 #21 0xb74d5eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 #22 0xb74e4dda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 #23 0xb6fffd1d in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQtGui.so.4 #24 0xb7005962 in QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQtGui.so.4 #25 0xb7006f24 in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib/libQtGui.so.4 #26 0xb6fd89cc in ?? () from /usr/lib/libQtGui.so.4 #27 0xb6fd8b92 in QTableView::selectRow(int) () from /usr/lib/libQtGui.so.4 #28 0xb7da18eb in Konsole::ManageProfilesDialog::tableSelectionChanged (this=0x847d260) at /mnt/personal/code/@abs/konsole/src/konsole-build/src/ManageProfilesDialog.cpp:309 #29 0xb7da3143 in Konsole::ManageProfilesDialog::qt_metacall (this=0x847d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbf800c94) at /mnt/personal/code/@abs/konsole/src/konsole-build/src/ManageProfilesDialog.moc:100 #30 0xb74d5eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 #31 0xb74e4dda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 #32 0xb6fffd1d in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQtGui.so.4 #33 0xb7005962 in QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQtGui.so.4 #34 0xb7006f24 in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib/libQtGui.so.4 #35 0xb6fd89cc in ?? () from /usr/lib/libQtGui.so.4
Git commit e83bc55fa4f19218955c7f28161dfefd40ab692a by Jekyll Wu. Committed on 06/09/2011 at 10:25. Pushed by jekyllwu into branch 'master'. Do not call selectedRow() at the end of tableSelectionChanged(). That line will cause infinite growing stack when Ctrl+A is pressed and finally make konsole crash . BUG: 281375 FIXED-IN: 4.8 M +0 -1 src/ManageProfilesDialog.cpp http://commits.kde.org/konsole/e83bc55fa4f19218955c7f28161dfefd40ab692a
Git commit 0263433e57f8a2ccea11736ae90d418cbeafba89 by Kurt Hindenburg, on behalf of Jekyll Wu. Committed on 06/09/2011 at 10:25. Pushed by hindenburg into branch 'KDE/4.7'. Do not call selectedRow() at the end of tableSelectionChanged(). That line will cause infinite growing stack when Ctrl+A is pressed and finally make konsole crash . BUG: 281375 FIXED-IN: 4.8 (cherry picked from commit e83bc55fa4f19218955c7f28161dfefd40ab692a) M +0 -1 src/ManageProfilesDialog.cpp http://commits.kde.org/konsole/0263433e57f8a2ccea11736ae90d418cbeafba89