From 83a58f6c4fcb4f15c48fb82cf164414cad36c08f Mon Sep 17 00:00:00 2001 From: Aaron Chiu Date: Thu, 4 May 2017 21:33:09 -0700 Subject: [PATCH] assert on UIBackground thread if UIBackground thread is available Reviewed By: raluca-elena Differential Revision: D5008046 fbshipit-source-id: 033b9ee76b331f6a4abcf4070e1a3206d7a8a422 --- .../main/java/com/facebook/react/bridge/ReactContext.java | 8 ++++++++ .../com/facebook/react/uimanager/UIManagerModule.java | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java index 9d8116d2de9..80d2bab72fc 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java @@ -312,6 +312,14 @@ public class ReactContext extends ContextWrapper { return mUiBackgroundMessageQueueThread != null; } + public void assertOnUIBackgroundOrNativeModulesThread() { + if (mUiBackgroundMessageQueueThread == null) { + assertOnNativeModulesQueueThread(); + } else { + assertOnUiBackgroundQueueThread(); + } + } + public void runUIBackgroundRunnable(Runnable runnable) { if (mUiBackgroundMessageQueueThread == null) { runOnNativeModulesQueueThread(runnable); diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java index 049d82091e3..c9074438f83 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java @@ -233,7 +233,7 @@ public class UIManagerModule extends ReactContextBaseJavaModule implements } public void updateNodeSize(int nodeViewTag, int newWidth, int newHeight) { - getReactApplicationContext().assertOnNativeModulesQueueThread(); + getReactApplicationContext().assertOnUIBackgroundOrNativeModulesThread(); mUIImplementation.updateNodeSize(nodeViewTag, newWidth, newHeight); }