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

xcb error after setCursor

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Not Evaluated
    • None
    • 5.1.0 RC1
    • Core: Plugins
    • None
    • Linux X11
    • bef6a02b936c2d3c8191179e14430179cd06b35e

    Description

      I started seeing xcb errors like these on probably any Qt application (with some debugs added for context):

      void QWindowPrivate::applyCursor() QObject(0x1337580)
      void QWindowPrivate::applyCursor() 0x1948988
      QXcbWindow::setCursor, xcb_change_window_attributes on 52428807 cursor 52428815
      QXcbConnection: XCB error: 3 (BadWindow), sequence: 345, resource id: 0, major code: 2 (ChangeWindowAttributes), minor code: 0
      QXcbConnection: XCB error: 3 (BadWindow), sequence: 347, resource id: 0, major code: 20 (GetProperty), minor code: 0
      void QWindowPrivate::applyCursor() QObject(0x1337580)
      void QWindowPrivate::applyCursor() 0x1948988
      QXcbWindow::setCursor, xcb_change_window_attributes on 52428807 cursor 52428811
      void QWindowPrivate::applyCursor() QObject(0x1337580)
      void QWindowPrivate::applyCursor() 0x1948988
      QXcbWindow::setCursor, xcb_change_window_attributes on 52428807 cursor 52428815
      void QWindowPrivate::applyCursor() QObject(0x1337580)
      void QWindowPrivate::applyCursor() 0x1948988
      QXcbWindow::setCursor, xcb_change_window_attributes on 52428807 cursor 52428811
      void QWindowPrivate::applyCursor() QObject(0x1337580)
      void QWindowPrivate::applyCursor() 0x1948988
      QXcbWindow::setCursor, xcb_change_window_attributes on 52428807 cursor 52428816
      void QWindowPrivate::applyCursor() QObject(0x1337580)
      void QWindowPrivate::applyCursor() 0x1948988

      It seems to be when the mouse is moved over the window and setCursor is called the first time.

      0 QXcbWindow::setCursor qxcbwindow.cpp 1902 0x7fffece48f44
      1 QXcbCursor::changeCursor qxcbcursor.cpp 352 0x7fffece4f66c
      2 QWindowPrivate::applyCursor qwindow.cpp 2276 0x7ffff6ae9660
      3 QWindowPrivate::setCursor qwindow.cpp 2260 0x7ffff6ae9463
      4 QWindow::setCursor qwindow.cpp 2219 0x7ffff6ae92b9
      5 applyCursor qwidget_qpa.cpp 1015 0x7ffff75e7ab8
      6 qt_qpa_set_cursor qwidget_qpa.cpp 1053 0x7ffff75e7d3f
      7 QApplicationPrivate::dispatchEnterLeave qapplication.cpp 2222 0x7ffff7574330
      8 QApplicationPrivate::sendMouseEvent qapplication.cpp 2467 0x7ffff7574fd3
      9 QWidgetWindow::handleMouseEvent qwidgetwindow.cpp 464 0x7ffff75e9318
      10 QWidgetWindow::event qwidgetwindow.cpp 158 0x7ffff75e82eb
      11 QApplicationPrivate::notify_helper qapplication.cpp 3442 0x7ffff7578564
      12 QApplication::notify qapplication.cpp 2845 0x7ffff7575be3
      13 QCoreApplication::notifyInternal qcoreapplication.cpp 871 0x7ffff651da8a
      14 QCoreApplication::sendSpontaneousEvent qcoreapplication.h 235 0x7ffff6ae0a55
      15 QGuiApplicationPrivate::processMouseEvent qguiapplication.cpp 1439 0x7ffff6adaf25
      16 QGuiApplicationPrivate::processWindowSystemEvent qguiapplication.cpp 1262 0x7ffff6ada66d
      17 QWindowSystemInterface::sendWindowSystemEventsImplementation qwindowsysteminterface.cpp 581 0x7ffff6ac9505
      18 QWindowSystemInterface::sendWindowSystemEvents qwindowsysteminterface.cpp 561 0x7ffff6ac948a
      19 userEventSourceDispatch qeventdispatcher_glib.cpp 78 0x7fffece5e250
      20 g_main_context_dispatch /usr/lib/libglib-2.0.so.0 0x7ffff4c74e46
      21 ?? /usr/lib/libglib-2.0.so.0 0x7ffff4c75198
      22 g_main_context_iteration /usr/lib/libglib-2.0.so.0 0x7ffff4c7523c
      23 QEventDispatcherGlib::processEvents qeventdispatcher_glib.cpp 426 0x7ffff658dbbb
      24 QPAEventDispatcherGlib::processEvents qeventdispatcher_glib.cpp 123 0x7fffece5e464
      25 QEventLoop::processEvents qeventloop.cpp 136 0x7ffff651a7ea
      26 QEventLoop::exec qeventloop.cpp 212 0x7ffff651aacd
      27 QDialog::exec qdialog.cpp 529 0x7ffff77e5727
      28 ChatMainWindow::ChatMainWindow chat.cpp 73 0x405dae
      29 main chat.cpp 160 0x40668e

      I would think we would have system cursors rather than custom ones by default? It says BadWindow but maybe it's actually a bad cursor, since setting different cursors seems to be OK later on; or else there's some other reason the error can only happen once.

      Attachments

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

        Activity

          People

            paeglis Gatis Paeglis
            srutledg Shawn Rutledge
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes