Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
4.6.2
-
None
-
Linux embedded: avr32 (QT_ARCH_AVR32)
-qws and VNC, no LinuxFB
buildroot-avr32-v2.3.0 (http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4401)
on Linux x86_64, OpenSUSE 11.2
configured for atngw100
proprietary avr32 board derived from atngw100
-
57fcc060fdce0874309ec94bb7ab77b44554e91b
Description
When running an embedded application (with -qws and vnc display), the application crashes on exiting.
Seems to be related to VNC display, only.
gdb output:
QWSServer::enablePainting (this=0x0, enable=false) at embedded/qwindowsystem_qws.h:217
217: Q_DECLARE_PRIVATE(QWSServer)
it seems that QWSServer::enablePainting is still called when the this-ptr is NULL, which crashes on accessing the private implementation class. Stacktrace is not available, unfortunately, b/c -Os is needed to compile and link Qt on avr32.
on exiting the app:
QVNCServer::discardClient (this=0x22178) at ../plugins/gfxdrivers/vnc/qscreenvnc_qws.cpp:2007
2007 if (!qvnc_screen->screen() && !qvnc_screen->d_ptr->noDisablePainting)
2008 QWSServer::instance()->enablePainting(false);
obviously, painting is to be disabled although the qws server already shut down.
2007 if (!qvnc_screen->screen() && !qvnc_screen->d_ptr->noDisablePainting)
if (QWSServer::instance())
2008 QWSServer::instance()->enablePainting(false);
Yep, solves the problem.
Sorry if the bug was already reported, I couldn't find anything.