diff options
Diffstat (limited to 'src/corelib/kernel/qeventloop.cpp')
-rw-r--r-- | src/corelib/kernel/qeventloop.cpp | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/src/corelib/kernel/qeventloop.cpp b/src/corelib/kernel/qeventloop.cpp index 3dc06242a3..8aa5a219fa 100644 --- a/src/corelib/kernel/qeventloop.cpp +++ b/src/corelib/kernel/qeventloop.cpp @@ -48,10 +48,6 @@ #include "qeventloop_p.h" #include <private/qthread_p.h> -#ifdef Q_OS_WASM -#include <emscripten.h> -#endif - QT_BEGIN_NAMESPACE /*! @@ -219,15 +215,6 @@ int QEventLoop::exec(ProcessEventsFlags flags) if (app && app->thread() == thread()) QCoreApplication::removePostedEvents(app, QEvent::Quit); -#ifdef Q_OS_WASM - // Partial support for nested event loops: Make the runtime throw a JavaSrcript - // exception, which returns control to the browser while preserving the C++ stack. - // Event processing then continues as normal. The sleep call below never returns. - // QTBUG-70185 - if (threadData->loopLevel > 1) - emscripten_sleep(1); -#endif - while (!d->exit.loadAcquire()) processEvents(flags | WaitForMoreEvents | EventLoopExec); @@ -290,17 +277,6 @@ void QEventLoop::exit(int returnCode) d->returnCode.storeRelaxed(returnCode); d->exit.storeRelease(true); threadData->eventDispatcher.loadRelaxed()->interrupt(); - -#ifdef Q_OS_WASM - // QEventLoop::exec() never returns in emscripten. We implement approximate behavior here. - // QTBUG-70185 - if (threadData->loopLevel == 1) { - emscripten_force_exit(returnCode); - } else { - d->inExec = false; - --threadData->loopLevel; - } -#endif } /*! |