You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
waitUntilExit: ignore RunLoop.run()'s return value (#4740)
* waitUntilExit: ignore RunLoop.run()'s return value
We've been seeing frequent (but not reproducible in isolation) failures
in our builds where waitUntilExit returns but terminationStatus fails
its precondition on hasFinished because isRunning is still true.
This is a speculative fix, since I haven't been able to reproduce the
failure in a self-contained test.
This should be safe since Process.waitUntilExit isn't spec'd to relate
to RunLoop. In particular there is no guarantee that "stopping" a
RunLoop should cause waitUntilExit to return before the monitored
process has exited.
* Exclude libdispatch_init() on TARGET_OS_MAC because it duplicates the call from the static constructor https://github.com/apple/swift-corelibs-libdispatch/blob/7fb9d5ceea562d60fe34ec55b6b165ae5aca38eb/src/init.c#L56
0 commit comments