mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Do not retain paper view inside legacy interop after it has been recycled
Summary: Changelog: [Internal] Paper views are not designed to be recycled, that's why a new view is created each time legacy interop layer is used. However paper view was not deallocated immediately after it was used, it was still being strongly referenced by `self.contentView`. This doesn't cause an immediate issue because eventually when legacy interop layer does get reused, it will create a new paper view and replace the old one inside `self.contentView`, triggering deallocation of the old one. But we were retaining the paper view beyond what was necessary. Reviewed By: mdvacca Differential Revision: D22066022 fbshipit-source-id: 17c3b81468f50ebcc05f1a7cdf4d4b9b00965fc3
This commit is contained in:
committed by
Facebook GitHub Bot
parent
56689e9e28
commit
3ff671c704
+1
@@ -87,6 +87,7 @@ static NSString *const kRCTLegacyInteropChildIndexKey = @"index";
|
||||
[_viewsToBeMounted removeAllObjects];
|
||||
[_viewsToBeUnmounted removeAllObjects];
|
||||
_state.reset();
|
||||
self.contentView = nil;
|
||||
[super prepareForRecycle];
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user