From cfa9dcda5697f1685768110b4bdf68bf7471a88e Mon Sep 17 00:00:00 2001 From: rcancro Date: Wed, 11 May 2016 14:08:06 -0700 Subject: [PATCH] typo and comment --- AsyncDisplayKit/ASViewController.mm | 8 ++++++-- AsyncDisplayKit/Details/ASTraitCollection.h | 2 +- AsyncDisplayKit/Details/ASTraitCollection.m | 4 ++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/AsyncDisplayKit/ASViewController.mm b/AsyncDisplayKit/ASViewController.mm index f90f34a180..af76607cc9 100644 --- a/AsyncDisplayKit/ASViewController.mm +++ b/AsyncDisplayKit/ASViewController.mm @@ -52,6 +52,10 @@ - (void)dealloc { if (_traitColectionContext != nil) { + // The setter will iterate through the VC's subnodes and replace the traitCollectionContext in their ASEnvironmentTraitCollection with nil. + // Since the VC holds the only strong reference to this context and we are in the process of destroying + // the VC, all the references in the subnodes will be unsafe unless we nil them out. More than likely all the subnodes will be dealloc'ed + // as part of the VC being dealloc'ed, but this is just to make extra sure. self.traitColectionContext = nil; } } @@ -158,7 +162,7 @@ { if (self.overrideDisplayTraitsWithTraitCollection) { ASTraitCollection *asyncTraitCollection = self.overrideDisplayTraitsWithTraitCollection(traitCollection); - self.traitColectionContext = asyncTraitCollection.traitColectionContext; + self.traitColectionContext = asyncTraitCollection.traitCollectionContext; return [asyncTraitCollection environmentTraitCollection]; } @@ -171,7 +175,7 @@ { if (self.overrideDisplayTraitsWithWindowSize) { ASTraitCollection *traitCollection = self.overrideDisplayTraitsWithWindowSize(windowSize); - self.traitColectionContext = traitCollection.traitColectionContext; + self.traitColectionContext = traitCollection.traitCollectionContext; return [traitCollection environmentTraitCollection]; } return self.node.environmentTraitCollection; diff --git a/AsyncDisplayKit/Details/ASTraitCollection.h b/AsyncDisplayKit/Details/ASTraitCollection.h index 0367e2fcd9..2168a40302 100644 --- a/AsyncDisplayKit/Details/ASTraitCollection.h +++ b/AsyncDisplayKit/Details/ASTraitCollection.h @@ -32,7 +32,7 @@ * This makes sure that the VC is the owner of the context and ASEnvironmentTraitCollections will not * have a reference to a dangling pointer. */ -@property (nonatomic, strong, readonly) id traitColectionContext; +@property (nonatomic, strong, readonly) id traitCollectionContext; + (ASTraitCollection *)traitCollectionWithASEnvironmentTraitCollection:(ASEnvironmentTraitCollection)traits; diff --git a/AsyncDisplayKit/Details/ASTraitCollection.m b/AsyncDisplayKit/Details/ASTraitCollection.m index 9e41d2b273..af492c759f 100644 --- a/AsyncDisplayKit/Details/ASTraitCollection.m +++ b/AsyncDisplayKit/Details/ASTraitCollection.m @@ -26,7 +26,7 @@ _horizontalSizeClass = horizontalSizeClass; _verticalSizeClass = verticalSizeClass; _forceTouchCapability = forceTouchCapability; - _traitColectionContext = traitCollectionContext; + _traitCollectionContext = traitCollectionContext; } return self; } @@ -91,7 +91,7 @@ .userInterfaceIdiom = self.userInterfaceIdiom, .verticalSizeClass = self.verticalSizeClass, .forceTouchCapability = self.forceTouchCapability, - .displayContext = self.traitColectionContext, + .displayContext = self.traitCollectionContext, }; }