{ "id": "85021", "key": "TIMOB-7246", "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": [ { "id": "12094", "description": "", "name": "Sprint 2012-02", "archived": true, "released": true, "releaseDate": "2012-01-29" }, { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" }, { "id": "12677", "description": "Release 1.8 Service Pack 1", "name": "Release 1.8.1", "archived": true, "released": true, "releaseDate": "2012-01-31" }, { "id": "16704", "description": "Release 3.5.0", "name": "Release 3.5.0", "archived": false, "released": true, "releaseDate": "2015-01-13" }, { "id": "16593", "description": "Release 4.0.0", "name": "Release 4.0.0", "archived": false, "released": true, "releaseDate": "2015-05-21" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2014-12-17T06:47:06.000+0000", "created": "2012-01-16T18:50:39.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "module_memory", "qe-3.5.0", "qe-manualtest", "regression" ], "versions": [ { "id": "12580", "description": "Dual Runtime 1.8.0", "name": "Release 1.8.0.1", "archived": true, "released": true, "releaseDate": "2011-12-22" } ], "issuelinks": [ { "id": "14865", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "85491", "key": "TIMOB-7413", "fields": { "summary": "Android: Function variables for Windows methods cannot be successfully invoked.", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2015-01-02T09:30:53.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "h3. The Problem:\r\nA window that has some type of animation with a callback function leaks.\r\n\r\nh3. Test case\r\nOpen instruments and look for proxies while opening and closing the window in the following code sample:\r\n\r\nh3. Code\r\n{code}\r\nfunction Window1(){\r\n\tvar self = {};\r\n\t\r\n\tvar win = Ti.UI.createWindow();\r\n\tvar btn = Ti.UI.createButton({\r\n\t\ttitle:'open',\r\n\t\tleft:20,\r\n\t\tright:20,\r\n\t\theight:44\r\n\t});\r\n\r\n\tbtn.addEventListener('click', function(){\r\n\t\tWindow2().open();\r\n\t});\r\n\r\n\twin.add(btn);\r\n\tself.open = win.open;\r\n\tself.close = win.close;\r\n\treturn self;\r\n}\r\n\r\nfunction Window2(){\r\n\tvar self = {};\r\n\t\r\n\tvar win = Ti.UI.createWindow({\r\n\t\tbackgroundColor:'green'\r\n\t});\r\n\t// win.addEventListener('close', function(){\r\n\t// \twin = null; // this will make the window go away from memory, but not the items within\r\n\t// });\r\n\twin.addEventListener('open', function(){\r\n\t\twin.animate({\r\n\t\t\tleft:10,\r\n\t\t\tduration:300\r\n\t\t}, function(){\r\n\t\t\tTi.API.info('complete');\r\n\t\t});\r\n\t});\r\n\tvar btn = Ti.UI.createButton({title:'close', left:20,right:20,height:44});\r\n\tbtn.addEventListener('click', function(){\r\n\t\twin.close();\r\n\t});\r\n\twin.add(btn);\r\n\t\r\n\tself.open = win.open;\r\n\tself.close = win.close;\r\n\treturn self;\r\n}\r\n\r\nWindow1().open();\r\n\r\n{code}", "attachment": [], "flagged": false, "summary": "iOS - Window Proxy does not get release if animated with callback", "creator": { "name": "penrique", "key": "penrique", "displayName": "Pedro Enrique", "active": false, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "penrique", "key": "penrique", "displayName": "Pedro Enrique", "active": false, "timeZone": "America/Los_Angeles" }, "environment": "iOS SDK\r\nTi SDK 1.8.0.1", "closedSprints": [ { "id": 272, "state": "closed", "name": "2014 Sprint 25 SDK", "startDate": "2014-12-08T22:49:31.264Z", "endDate": "2014-12-22T01:00:00.000Z", "completeDate": "2015-01-05T18:18:28.523Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "180206", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Reopening to add labels and closing comment", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-23T11:50:00.000+0000", "updated": "2012-01-23T11:50:00.000+0000" }, { "id": "180208", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified fixed with SDK 1.9.0.v20120121223134 on iPhone 4s (5.0.1).", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-23T11:53:31.000+0000", "updated": "2012-01-23T11:53:31.000+0000" }, { "id": "181285", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "body": "updated labels", "updateAuthor": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2012-01-31T16:54:11.000+0000", "updated": "2012-01-31T16:54:11.000+0000" }, { "id": "334788", "author": { "name": "kvelummaylum", "key": "kvelummaylum", "displayName": "Kajenthiran Velummaylum", "active": true, "timeZone": "Asia/Shanghai" }, "body": "Reopening the ticket as it's leaking in 3.5.0 SDK\r\nWhile testing with Xcode instruments, # Persistent value never goes down.\r\nThis is a *regression* as it's working fine in 3.4.1 release.\r\n\r\nTest Environment:\r\nTitanium SDK: 3.5.0.v20141202100219\r\nAppc-Studio: 3.4.1 GA\r\nTitanium CLI: 3.4.1 GA\r\nAlloy : 1.5.1 GA\r\nXcode : 6.1\r\nOS: OSX 10.10.1\r\nDevice : iPhone 6plus (iOS 8.1)", "updateAuthor": { "name": "kvelummaylum", "key": "kvelummaylum", "displayName": "Kajenthiran Velummaylum", "active": true, "timeZone": "Asia/Shanghai" }, "created": "2014-12-04T08:02:03.000+0000", "updated": "2014-12-04T08:02:03.000+0000" }, { "id": "335028", "author": { "name": "kagrawal", "key": "kagrawal", "displayName": "Khushbu Agrawal", "active": true, "timeZone": "Asia/Shanghai" }, "body": "Had seen the same issue.\r\nIf the window has some type of animation with a callback function then its leaking.\r\nWithout Animation, its work fine.", "updateAuthor": { "name": "kagrawal", "key": "kagrawal", "displayName": "Khushbu Agrawal", "active": true, "timeZone": "Asia/Shanghai" }, "created": "2014-12-05T09:50:44.000+0000", "updated": "2014-12-05T09:51:01.000+0000" }, { "id": "336601", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Pull pending\r\nmaster - https://github.com/appcelerator/titanium_mobile/pull/6488\r\n3_5_X - https://github.com/appcelerator/titanium_mobile/pull/6489", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2014-12-16T18:47:40.000+0000", "updated": "2014-12-16T18:47:40.000+0000" }, { "id": "336735", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "CR and FT Passed. Both pull requests merged.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2014-12-17T06:46:42.000+0000", "updated": "2014-12-17T06:46:42.000+0000" }, { "id": "337742", "author": { "name": "kvelummaylum", "key": "kvelummaylum", "displayName": "Kajenthiran Velummaylum", "active": true, "timeZone": "Asia/Shanghai" }, "body": "Verified the fix and hence closing the ticket.\r\n\r\nTest Environment:\r\nTitanium SDK: 3.5.0.v20141222103320\r\nAppc-Studio: 3.4.1 GA\r\nTitanium CLI: 3.4.1 GA\r\nAlloy : 1.5.1 GA\r\nXcode : 6.1\r\nOS: OSX 10.10.1\r\nDevice : iPhone 6plus (iOS 8.1)", "updateAuthor": { "name": "kvelummaylum", "key": "kvelummaylum", "displayName": "Kajenthiran Velummaylum", "active": true, "timeZone": "Asia/Shanghai" }, "created": "2015-01-02T09:30:26.000+0000", "updated": "2015-01-02T09:30:26.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }