Reviewing merge request #2627: a set of fixes and improvements for QWS

Commits that would be merged:

Version 5
  • Version 1
  • Version 1
  • Version 2
  • Version 2
  • Version 3
  • Version 4
  • Version 5
  • Version 5
  • fa13df9
  • Ritt Konstantin
12 months ago
  • c7213e5
  • Ritt Konstantin
12 months ago
  • 05fb7ae
  • Ritt Konstantin
12 months ago
  • 7791a8a
  • Ritt Konstantin
12 months ago
  • 8cac43e
  • Ritt Konstantin
12 months ago
  • eac2e9a
  • Ritt Konstantin
12 months ago
  • 24c3dba
  • Ritt Konstantin
12 months ago
  • 145eb02
  • Ritt Konstantin
12 months ago
  • b1d9e93
  • Ritt Konstantin
12 months ago
  • 6906499
  • Ritt Konstantin
12 months ago
  • 5a84290
  • Ritt Konstantin
12 months ago
Showing 408a522-fa13df9

Comments

→ State changed from New to Revise and resubmit

QWS apps crash now, e.g. “./tst_qlineedit -qws”:

0 0xb7fe2832 in ?? () from /lib/ld-linux.so.2

1 0xb6bbbe71 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64

2 0xb6bbf34e in abort () at abort.c:92

3 0xb6bf2577 in __libc_message (do_abort=2,

fmt=0xb6ccb8ac "*** glibc detected *** %s: %s: 0x%s ***\n")
at ../sysdeps/unix/sysv/linux/libc_fatal.c:189  

4 0xb6bfc961 in malloc_printerr (action=, str=,

ptr=0x8127fd0) at malloc.c:6283

5 0xb6bfe28b in _int_free (av=, p=0x8127fc8) at malloc.c:4795

6 0xb6c0141d in __libc_free (mem=0x8127fd0) at malloc.c:3738

7 0xb6dde4d1 in operator delete(void*) () from /usr/lib/i386-linux-gnu/libstdc++.so.6

8 0xb6dde52d in operator delete () from /usr/lib/i386-linux-gnu/libstdc++.so.6

9 0xb76a372f in QWSLocalMemSurface::setGeometry (this=0x80c5da0, rect=…)

at /home/harald/qt/qt/src/gui/painting/qwindowsurface_qws.cpp:975

10 0xb7699b57 in QWidgetBackingStore::releaseBuffer (this=0x80f8d30)

at /home/harald/qt/qt/src/gui/painting/qbackingstore.cpp:292

11 0xb74fb7ca in QWidgetPrivate::hide_sys (this=0x80fcf90)

at /home/harald/qt/qt/src/gui/kernel/qwidget_qws.cpp:651

12 0xb74c5394 in QWidgetPrivate::hide_helper (this=0x80fcf90)

at /home/harald/qt/qt/src/gui/kernel/qwidget.cpp:7594

13 0xb74c5adc in QWidget::setVisible (this=0xbfffe670, visible=false)

at /home/harald/qt/qt/src/gui/kernel/qwidget.cpp:7777

14 0xb74aa41a in QWidget::hide (this=0xbfffe670)

at ../../include/QtGui/../../../qt/src/gui/kernel/qwidget.h:498

15 0xb74c6135 in QWidgetPrivate::close_helper (this=0x80fcf90, mode=QWidgetPrivate::CloseNoEvent)

at /home/harald/qt/qt/src/gui/kernel/qwidget.cpp:7912

16 0xb74b73c2 in QWidget::~QWidget (this=0xbfffe670, __in_chrg=)

at /home/harald/qt/qt/src/gui/kernel/qwidget.cpp:1611

17 0xb78c9631 in QLineEdit::~QLineEdit (this=0xbfffe670, __in_chrg=)

at /home/harald/qt/qt/src/gui/widgets/qlineedit.cpp:357

18 0x080709c2 in LineEdit::~LineEdit (this=0xbfffe670, __in_chrg=)

at /home/harald/qt/qt/tests/auto/qlineedit/tst_qlineedit.cpp:3023

19 0x080664c1 in tst_QLineEdit::returnPressedKeyEvent (this=0xbffff03c)

at /home/harald/qt/qt/tests/auto/qlineedit/tst_qlineedit.cpp:3051

20 0x0806e370 in tst_QLineEdit::qt_static_metacall (_o=0xbffff03c,

_c=QMetaObject::InvokeMetaMethod, _id=79, _a=0xbfffe740)
at .moc/debug-shared-emb-x86/tst_qlineedit.moc:311  

21 0xb6fe5c89 in QMetaMethod::invoke (this=0xbfffe8ac, object=0xbffff03c,

connectionType=Qt::DirectConnection, returnValue=..., val0=..., val1=..., val2=..., val3=...,
val4=..., val5=..., val6=..., val7=..., val8=..., val9=...)  
at /home/harald/qt/qt/src/corelib/kernel/qmetaobject.cpp:1636  

22 0xb6fe51b2 in QMetaObject::invokeMethod (obj=0xbffff03c,

member=0x8089768 "returnPressedKeyEvent", type=Qt::DirectConnection, ret=..., val0=...,
val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...)  
at /home/harald/qt/qt/src/corelib/kernel/qmetaobject.cpp:1178  

23 0xb7fc8e86 in QMetaObject::invokeMethod (obj=0xbffff03c,

member=0x8089768 "returnPressedKeyEvent", type=Qt::DirectConnection, val0=..., val1=...,
val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...)  
at ../../include/QtCore/../../../qt/src/corelib/kernel/qobjectdefs.h:418  

24 0xb7fc68f5 in QTest::qInvokeTestMethodDataEntry (slot=0x8089768 “returnPressedKeyEvent”)

at /home/harald/qt/qt/src/testlib/qtestcase.cpp:1355

25 0xb7fc6e7a in QTest::qInvokeTestMethod (slotName=0x80780b9 “returnPressedKeyEvent()”, data=0x0)

at /home/harald/qt/qt/src/testlib/qtestcase.cpp:1463

26 0xb7fc7601 in QTest::qInvokeTestMethods (testObject=0xbffff03c)

at /home/harald/qt/qt/src/testlib/qtestcase.cpp:1628

27 0xb7fc7a81 in QTest::qExec (testObject=0xbffff03c, argc=1, argv=0xbffff134)

at /home/harald/qt/qt/src/testlib/qtestcase.cpp:1851

28 0x0806dde8 in main (argc=1, argv=0xbffff134)

at /home/harald/qt/qt/tests/auto/qlineedit/tst_qlineedit.cpp:3899

→ State changed from Revise and resubmit to Updated

the memleak fix was a bit incorrect (I've missed that the memory was deleted twice with it – indirectly by hiding the widget and then directly – in destructor).
updated with a proper and tested fix…

updated once again with some optimizations…

→ State changed from Updated to Merged

Tested & Merged, thanks for the contribution :)

Add a new comment:

Login or create an account to post a comment

How to apply this merge request to your repository