Browse Source

Prevent retaining overlay RootView in rotation block

yogevbd 6 years ago
parent
commit
abb91113ea
2 changed files with 2 additions and 3 deletions
  1. 2
    2
      lib/ios/RNNControllerFactory.m
  2. 0
    1
      lib/ios/RNNRootViewController.m

+ 2
- 2
lib/ios/RNNControllerFactory.m View File

@@ -190,10 +190,10 @@
190 190
 
191 191
 - (UIViewController<RNNRootViewProtocol> *)createOverlay:(NSDictionary*)layout {
192 192
 	UIViewController<RNNRootViewProtocol> *vc = [self fromTree:layout];
193
-	RCTRootView* rootView = (RCTRootView*)vc.view;
193
+	__block RCTRootView* rootView = (RCTRootView*)vc.view;
194 194
 	[vc performOnRotation:^{
195 195
 		CGSize availableSize = UIApplication.sharedApplication.delegate.window.bounds.size;
196
-		[_bridge.uiManager setSize:availableSize forView:vc.view];
196
+		[_bridge.uiManager setSize:availableSize forView:rootView];
197 197
 	}];
198 198
 	rootView.backgroundColor = [UIColor clearColor];
199 199
 	CGSize availableSize = UIApplication.sharedApplication.delegate.window.bounds.size;

+ 0
- 1
lib/ios/RNNRootViewController.m View File

@@ -68,7 +68,6 @@
68 68
 -(void)viewDidDisappear:(BOOL)animated {
69 69
 	[super viewDidDisappear:animated];
70 70
 	[self.eventEmitter sendComponentDidDisappear:self.componentId componentName:self.componentName];
71
-	_rotationBlock = nil;
72 71
 }
73 72
 
74 73
 - (void)viewDidLoad {