diff --git a/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm b/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm index 626a47ed057ccf..58cb87ea98eebf 100644 --- a/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +++ b/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm @@ -73,13 +73,7 @@ - (instancetype)initWithBridge:(RCTBridge *)bridge // `RCTRootViewSizeFlexibilityNone` is the RCTRootView's default. RCTSurfaceSizeMeasureMode sizeMeasureMode = convertToSurfaceSizeMeasureMode(RCTRootViewSizeFlexibilityNone); - id surface = [[self class] createSurfaceWithBridge:bridge - moduleName:moduleName - initialProperties:initialProperties]; - [surface start]; - if (self = [super initWithSurface:surface sizeMeasureMode:sizeMeasureMode]) { - // Nothing specific to do. - } + self = [super initWithBridge:bridge moduleName:moduleName initialProperties:initialProperties sizeMeasureMode:sizeMeasureMode]; RCT_PROFILE_END_EVENT(RCTProfileTagAlways, @""); diff --git a/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm b/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm index f271bb76957171..9dbfad6548dc65 100644 --- a/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +++ b/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm @@ -46,8 +46,10 @@ - (instancetype)initWithBridge:(RCTBridge *)bridge id surface = [[self class] createSurfaceWithBridge:bridge moduleName:moduleName initialProperties:initialProperties]; - [surface start]; - return [self initWithSurface:surface sizeMeasureMode:sizeMeasureMode]; + if (self = [self initWithSurface:surface sizeMeasureMode:sizeMeasureMode]) { + [surface start]; + } + return self; } - (instancetype)initWithSurface:(id)surface