[TIMOB-2207] Contexts do not release unused objects
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | Medium |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2011-04-17T01:58:25.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 1.5.0 |
Components | iOS |
Labels | context, critical, ios, memory |
Reporter | Stephen Tramer |
Assignee | Stephen Tramer |
Created | 2011-04-15T03:13:31.000+0000 |
Updated | 2011-04-17T01:58:25.000+0000 |
Description
Title says it all. Helpdesk ticket http://developer.appcelerator.com/helpdesk/view/46321">http://developer.appcelerator.com/helpdesk/view/46321 provides an example of how this issue affects developers. Note that from within TiUIScrollableView, our memory management is correct and relies on the 'views' array to be deallocated when it is no longer in use (there are no more references to it, and therefore the context no longer needs access to it).
This bug should be considered CRITICAL and a high priority as a result.
(from [a6b1b3c4fc4224e39b7d05e807987c4c8fe6ce30]) [#2207 state:fixed-in-qa] Objects marked for 'autorelease' in context execution are no longer retained for duration of context. http://github.com/appcelerator/titanium_mobile/commit/a6b1b3c4fc4224e39b7d05e807987c4c8fe6ce30"> http://github.com/appcelerator/titanium_mobile/commit/a6b1b3c4fc422...
Headsup for Thom on this one:
I solved the most obvious bugs for this one, being caused by context delegates being released too early and ASIHTTPRequest not being very threadsafe. However since it's a BIG change in our memory management, any bugs which appear in the next regression scrub which are crashers may be a result of #2207.
(from [6713f679deac5027cdf5bc4fb28dd4e5eb84663b]) [#2187 state:fixed-in-qa][#2207] Video player cleanup done without firing second 'stop' message. First fix of unintended autorelease 2207 consequence (window 'close' listeners). http://github.com/appcelerator/titanium_mobile/commit/6713f679deac5027cdf5bc4fb28dd4e5eb84663b"> http://github.com/appcelerator/titanium_mobile/commit/6713f679deac5...
(from [ce58295321e86a1a18045692b7d52dcc8e5691b5]) [#2241 state:fixed-in-qa][#2207] Slight reorganization of memory releasing. http://github.com/appcelerator/titanium_mobile/commit/ce58295321e86a1a18045692b7d52dcc8e5691b5"> http://github.com/appcelerator/titanium_mobile/commit/ce58295321e86...
Had to view from afar (Instruments on device), but looks like things are being released (tested with table views)