{ "id": "124297", "key": "TIMOB-16194", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2013-12-31T02:28:55.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "alloy", "animation", "callback", "leak" ], "versions": [], "issuelinks": [], "assignee": null, "updated": "2018-02-28T20:04:20.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "Application is leaking if animation call callback function. If is animation without callback everything is alright... \r\n\r\nI have putted to the archive whole project including video from the app & instruments.\r\n\r\n(If is possible please reupload it on some better place / pick up only important informations. Archive can be deleted in the future)\r\n\r\nhttp://www.filedropper.com/memleak", "attachment": [], "flagged": false, "summary": "Alloy: Memory leaking if animation call callback", "creator": { "name": "sko", "key": "sko", "displayName": "Matej", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "sko", "key": "sko", "displayName": "Matej", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Ti 3.2.0.GA, iOS Simulator", "comment": { "comments": [ { "id": "288254", "author": { "name": "sko", "key": "sko", "displayName": "Matej", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Please can somebody have a look on this issue? Thanks", "updateAuthor": { "name": "sko", "key": "sko", "displayName": "Matej", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-01-15T14:12:38.000+0000", "updated": "2014-01-15T14:12:38.000+0000" }, { "id": "288267", "author": { "name": "shossain", "key": "shossain", "displayName": "Shak Hossain", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Matej,\n\nYes, this will be moved to TIMOB for engineering review. \n\nThanks,\nShak", "updateAuthor": { "name": "shossain", "key": "shossain", "displayName": "Shak Hossain", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2014-01-15T16:58:00.000+0000", "updated": "2014-01-15T16:58:00.000+0000" }, { "id": "289586", "author": { "name": "rblalock", "key": "rblalock", "displayName": "Rick Blalock", "active": false, "timeZone": "America/Havana" }, "body": "I'm running in to this issue but in the case of this code sample, I don't see where things are supposed to go out of memory. The view is always referencable so it wouldn't go out of memory anyway.\n\nA good test is using the Alloy animation builtin - it has the leak since it uses the callback instead of the animation complete event. https://github.com/appcelerator/alloy/blob/master/Alloy/builtins/animation.js - if when the view you're animating goes out of scope and there's no reference left in JS, it will be retained along with anything where the callback falls in to scope (it is a closure after all). i.e. Nulling out the callback and the view, etc. won't release it.", "updateAuthor": { "name": "rblalock", "key": "rblalock", "displayName": "Rick Blalock", "active": false, "timeZone": "America/Havana" }, "created": "2014-01-24T14:13:51.000+0000", "updated": "2014-01-24T14:13:51.000+0000" }, { "id": "291262", "author": { "name": "sko", "key": "sko", "displayName": "Matej", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hi Rick, have you seen attached video? Number of used views is increasing without any release...\r\n\r\n// Yes the problem is in a callback ,but without Alloy it works properly.", "updateAuthor": { "name": "sko", "key": "sko", "displayName": "Matej", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-02-04T23:13:59.000+0000", "updated": "2014-02-04T23:15:59.000+0000" } ], "maxResults": 8, "total": 8, "startAt": 0 } } }