From 8df39e13e839f7fd51a150b1cd664fdb788554b1 Mon Sep 17 00:00:00 2001 From: Chris Hogan Date: Thu, 14 May 2020 15:03:55 -0700 Subject: [PATCH 1/3] Update RCTCxxBridge.mm --- .../React/CxxBridge/RCTCxxBridge.mm | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm b/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm index 27800d7121bd0a..a38b4d84477734 100644 --- a/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm +++ b/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm @@ -1,10 +1,10 @@ ---- "e:\\github\\fb-react-native-forpatch-base\\React\\CxxBridge\\RCTCxxBridge.mm" 2020-01-30 13:55:48.476581100 -0800 -+++ "e:\\github\\ms-react-native-forpatch\\React\\CxxBridge\\RCTCxxBridge.mm" 2020-02-14 10:59:16.805390300 -0800 -@@ -596,6 +596,7 @@ - // This is async, but any calls into JS are blocked by the m_syncReady CV in Instance - _reactInstance->initializeBridge( - std::make_unique(self), -+ nullptr, // Use default executor delegate - executorFactory, - _jsMessageThread, - [self _buildModuleRegistryUnlocked]); +--- "e:\\github\\fb-react-native-forpatch-base\\React\\CxxBridge\\RCTCxxBridge.mm" 2020-01-30 13:55:48.476581100 -0800 ++++ "e:\\github\\ms-react-native-forpatch\\React\\CxxBridge\\RCTCxxBridge.mm" 2020-02-14 10:59:16.805390300 -0800 +@@ -596,6 +596,7 @@ + // This is async, but any calls into JS are blocked by the m_syncReady CV in Instance + _reactInstance->initializeBridge( + std::make_unique(self), ++ nullptr, // Use default executor delegate + executorFactory, + _jsMessageThread, + [self _buildModuleRegistryUnlocked]); From ea4f4323856e7652113ba0ad357d103e3b697f7f Mon Sep 17 00:00:00 2001 From: Chris Hogan Date: Thu, 14 May 2020 15:03:55 -0700 Subject: [PATCH 2/3] Update RCTCxxBridge.mm --- .../OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm diff --git a/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm b/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm new file mode 100644 index 00000000000000..a38b4d84477734 --- /dev/null +++ b/android-patches/patches-droid-office-grouped/OfficeRNHost/React/CxxBridge/RCTCxxBridge.mm @@ -0,0 +1,10 @@ +--- "e:\\github\\fb-react-native-forpatch-base\\React\\CxxBridge\\RCTCxxBridge.mm" 2020-01-30 13:55:48.476581100 -0800 ++++ "e:\\github\\ms-react-native-forpatch\\React\\CxxBridge\\RCTCxxBridge.mm" 2020-02-14 10:59:16.805390300 -0800 +@@ -596,6 +596,7 @@ + // This is async, but any calls into JS are blocked by the m_syncReady CV in Instance + _reactInstance->initializeBridge( + std::make_unique(self), ++ nullptr, // Use default executor delegate + executorFactory, + _jsMessageThread, + [self _buildModuleRegistryUnlocked]); From 66da532d064b471ae22f48cc2be0748c0784d30f Mon Sep 17 00:00:00 2001 From: Chris Hogan Date: Wed, 12 May 2021 22:41:26 -0700 Subject: [PATCH 3/3] run loop nil check --- Libraries/WebSocket/RCTSRWebSocket.m | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Libraries/WebSocket/RCTSRWebSocket.m b/Libraries/WebSocket/RCTSRWebSocket.m index 0db4d7a9dfaf3f..83aed8d52bfee2 100644 --- a/Libraries/WebSocket/RCTSRWebSocket.m +++ b/Libraries/WebSocket/RCTSRWebSocket.m @@ -530,7 +530,14 @@ - (void)_initializeStreams - (void)_connect { if (!_scheduledRunloops.count) { - [self scheduleInRunLoop:[NSRunLoop RCTSR_networkRunLoop] forMode:NSDefaultRunLoopMode]; + // [TODO(macOS ISS#2323203): `scheduleInRunLoop:forMode:` takes in a non-null run loop parameter so let's be safe and verify that + NSRunLoop *runLoop = [NSRunLoop RCTSR_networkRunLoop]; + if (runLoop != nil) { + [self scheduleInRunLoop:runLoop forMode:NSDefaultRunLoopMode]; + } else { + RCTSRLog(@"Failed connecting to RCTSR_networkRunLoop"); + } + // ]TODO(macOS ISS#2323203) } [_outputStream open];