Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-11196

segfault in QWSServer::enablePainting on app exit (QWS, VNC)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 4.7.0
    • 4.6.2
    • None
    • 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.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            tvete Paul Olav Tvete
            csbac Sebastian Brandt
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes