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

QUdpSocket not emitting readyRead after being moved to new thread

    XMLWordPrintable

Details

    • Bug
    • Resolution: Cannot Reproduce
    • P1: Critical
    • Some future release
    • 5.3.2
    • Network: Sockets
    • None
    • OS X 10.9

    Description

      This is a bug not present in 5.2.1, discovered upon updating to 5.3.2.

      We have a QUdpSocket on the QCoreApplication main thread, that we optionally move to a separate QThread before that thread is started. Once that separate QThread is started, all signals and slots in that thread seem to work except that the QUdpSocket that was moved to it stops emitting readyRead. If I manually call my slot that pulls datagrams from the socket it does have pending datagrams and I am able to read them.

      When the QUdpSocket is returned to the main thread it emits readyRead again.

      Our temporary fix for this is to close the socket and then immediately bind it again. This is done after the QThread is started.

      Attachments

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

        Activity

          People

            peter-har Peter Hartmann
            birarda Stephen Birarda
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes