Changeset 195 for trunk/src/corelib/io

Timestamp:
Sep 26, 2009, 2:34:55 AM (16 years ago)
Author:
Dmitry A. Kuminov
Message:

corelib: Don't break waiting on sync primitives because of ERROR_INTERRUPT that we get as a result of handling Posix signals (SIGCHILD at the moment).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/corelib/io/qprocess_os2.cpp

    r192 r195  
    332332    do {
    333333        locker.unlock();
    334         arc = DosWaitEventSem(eventSem, SEM_INDEFINITE_WAIT);
     334        );
    335335        locker.relock();
    336336        if (finish)
     
    941941                }
    942942            } else {
    943                 APIRET arc = DosWaitEventSem(waitSem, (ULONG)timeout);
     943                APIRET arc;
     944                qDosNI(arc = DosWaitEventSem(waitSem, (ULONG)timeout));
    944945                if (arc == ERROR_TIMEOUT) {
    945946                    timedOut = true;
     
    10351036                }
    10361037            } else {
    1037                 APIRET arc = DosWaitEventSem(waitSem, (ULONG)timeout);
     1038                APIRET arc;
     1039                qDosNI(arc = DosWaitEventSem(waitSem, (ULONG)timeout));
    10381040                if (arc == ERROR_TIMEOUT) {
    10391041                    timedOut = true;
     
    11321134                }
    11331135            } else {
    1134                 APIRET arc = DosWaitEventSem(waitSem, (ULONG)timeout);
     1136                APIRET arc;
     1137                qDosNI(arc = DosWaitEventSem(waitSem, (ULONG)timeout));
    11351138                if (arc == ERROR_TIMEOUT) {
    11361139                    timedOut = true;
Note: See TracChangeset for help on using the changeset viewer.