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:
Родитель
56689e9e28
Коммит
3ff671c704
|
@ -87,6 +87,7 @@ static NSString *const kRCTLegacyInteropChildIndexKey = @"index";
|
|||
[_viewsToBeMounted removeAllObjects];
|
||||
[_viewsToBeUnmounted removeAllObjects];
|
||||
_state.reset();
|
||||
self.contentView = nil;
|
||||
[super prepareForRecycle];
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче