Details
-
Bug
-
Resolution: Unresolved
-
Not Evaluated
-
None
-
Qt Creator 11.0.1, Qt Creator 12.0.2
-
None
-
Linux OpenSuse 15.5
The same is happening on both QT5 and QT6.6.1
GCC 12.3
gdb 12.1
Description
Hi,
I experience a graphics freeze when debugging a function connected to the QComboBox->QLineEdit->editingFinished signal:
1. Connect the editingFinished signal of the lineedit of a non-empty combobox to a function (both a lambda and a member function gives the same problem).
2. Set a breakpoint inside the connected function.
3. Build and run the application in the debugger.
4. Click the arrow of the combobox.
5. The debugger stops at the breakpoint and the graphics session freezes. Only the Start button on the keyboard and the mouse cursor reacts to user input.
6. I need to switch to a different graphics session to kill the gdb process, and switch back to be able to continue. The debugged app is also closed in the process.
The freeze only seems to happen when clicking the arrow, not when pressing enter or tabbing away from the combobox. Then the debugger still stops, but doesn't freeze.
And I dont see the same from a regular lineedit object.
I saw the same behavior on QT5 and QT6.6.1, and I have tested on three similar Linux machines. Attached is a file with this simple main.cpp:
#include <QApplication> #include <QDialog> #include <QVBoxLayout> #include <QComboBox> #include <QLineEdit> int main(int argc, char *argv[]) { QApplication a(argc, argv); QDialog w; auto *layout = new QVBoxLayout(&w); auto *comboBox = new QComboBox{}; comboBox->setEditable(true); comboBox->addItems({QT_VERSION_STR, "Qt Version"}); QObject::connect(comboBox->lineEdit(), &QLineEdit::editingFinished, [&]() { qDebug() << "hello"; } ); layout->addWidget(comboBox); w.show(); return a.exec(); }