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

QWinOverlappedIoNotifier has a timeout miscalculation

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: P2: Important P2: Important
    • 5.6.0 RC
    • 5.6.0 Beta
    • Core: I/O
    • None
    • * Windows 7 x64
      * Qt 5.6.0 Beta (Mingw && MSVC2013)
    • e96fa5a780665e24fe4710868e399b3216a5d3b3

      In the source file "corelib/io/qwinoverlappedionotifier.cpp" line354 to 371 of version 5.6.0 Beta:

          int t = msecs;
          QElapsedTimer stopWatch;
          stopWatch.start();
          forever {
              OVERLAPPED *triggeredOverlapped = waitForAnyNotified(t);
              ....
              msecs = qt_subtract_from_timeout(msecs, stopWatch.elapsed());
              ....
          }
      

      It should be:

          t = qt_subtract_from_timeout(msecs, stopWatch.elapsed());
      

      It was introduced by the commit "ed0c0070f9b05c647019270dfc42073d071c830a", and appeared to affect a lot of versions.

        For Gerrit Dashboard: QTBUG-50173
        # Subject Branch Project Status CR V

            jbornema Joerg Bornemann
            spirithy@gmail.com Spirit He
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes