[ASCellNode] Ensure we don't trigger the UIViewController to be created early if we are wrapping one.

This commit is contained in:
Scott Goodson 2016-01-14 23:28:15 -08:00
parent affb786a14
commit 6741ae658e

View File

@ -20,7 +20,6 @@
@interface ASCellNode ()
{
ASDisplayNodeDidLoadBlock _nodeLoadedBlock;
UIViewController *_viewController;
ASDisplayNode *_viewControllerNode;
}
@ -49,15 +48,13 @@
ASDisplayNodeAssertNotNil(viewControllerBlock, @"should initialize with a valid block that returns a UIViewController");
if (viewControllerBlock) {
_viewController = viewControllerBlock();
__weak UIViewController *weakViewController = _viewController;
_viewControllerNode = [[ASDisplayNode alloc] initWithViewBlock:^UIView *{
return weakViewController.view;
_viewController = viewControllerBlock();
return _viewController.view;
} didLoadBlock:didLoadBlock];
[self addSubnode:_viewControllerNode];
_nodeLoadedBlock = didLoadBlock;
}
return self;