diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java index fec5627bd89..e1e39dd2a40 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java @@ -474,10 +474,14 @@ public class FabricUIManager implements UIManager, LifecycleEventListener { mMountItems.add(mountItem); } - // Post markers outside of lock + if (UiThreadUtil.isOnUiThread()) { + dispatchMountItems(); + } + + // Post markers outside of lock and after sync mounting finishes its execution if (isBatchMountItem) { ReactMarker.logFabricMarker( - ReactMarkerConstants.FABRIC_COMMIT_START, null, commitNumber, mCommitStartTime); + ReactMarkerConstants.FABRIC_COMMIT_START, null, commitNumber, commitStartTime); ReactMarker.logFabricMarker( ReactMarkerConstants.FABRIC_FINISH_TRANSACTION_START, null, @@ -498,10 +502,6 @@ public class FabricUIManager implements UIManager, LifecycleEventListener { ReactMarkerConstants.FABRIC_LAYOUT_END, null, commitNumber, layoutEndTime); ReactMarker.logFabricMarker(ReactMarkerConstants.FABRIC_COMMIT_END, null, commitNumber); } - - if (UiThreadUtil.isOnUiThread()) { - dispatchMountItems(); - } } @UiThread