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

Document QProcess::waitForReadyRead()

    XMLWordPrintable

Details

    • Task
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.0
    • Core: I/O, Documentation
    • None
    • All

    Description

      This task is about QProcess in QProcess::SeparateChannels mode.

      Currently the documentation for QProcess::waitForReadyRead() says it's just a reimplementation of QIODevice. See: https://doc.qt.io/archives/qt-6.0/qprocess.html#waitForReadyRead. However, this is not enough.

      QProcess::waitForReadyRead() works only for one selected channel: either StandardOutput (the default) or StandardError. The channel may be selected via the QProcess::setReadChannel().

      In case when the selected channel was StandardOutput and the data appeared on stdErr, this function won't notice it. The same applies for the opposite case: when the selected channel was StandardError and the data appeared on stdOut, it will stay unnoticed. Please document it, as it's really not obvious.

      Currently there is no way to blocking wait for data on any channel - the pending request for the feature is here: QTBUG-119804.

      Attachments

        Issue Links

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

          Activity

            People

              docteam Qt Documentation Team
              jkobus Jarek Kobus
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes