{ "id": "110536", "key": "TIMOB-12931", "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": "16593", "description": "Release 4.0.0", "name": "Release 4.0.0", "archived": false, "released": true, "releaseDate": "2015-05-21" } ], "resolution": { "id": "10000", "description": "", "name": "Done" }, "resolutiondate": "2015-06-05T02:04:46.000+0000", "created": "2013-03-02T02:40:47.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [ { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" }, { "id": "14164", "description": "Release 3.0.2", "name": "Release 3.0.2", "archived": true, "released": true, "releaseDate": "2013-02-19" } ], "issuelinks": [], "assignee": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-03-16T21:42:22.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": "10202", "name": "Android", "description": "Android Platform" } ], "description": "*Details:* If you extend a view (that is a child of ScrollView) pass the phone's screen and click on a switch control at the end, then the app will crash and return a SIGSEGV in logcat.\r\n\r\n*This bug is reproducible on 3.0.0.GA*\r\n\r\n*Steps to Reproduce:*\r\n1. Install attached sample app\r\n2. Go to *basic vertical panning* or *basic horizontal panning*\r\n3. Scroll vertically or horizontally (depending on which test) to the end of the view\r\n3a. While scrolling to the end of the view, tap the view a couple of times\r\n4. Press the switch control\r\n\r\n*Actual:* App will crash and return SIGSEGV error in logcat (see attachments)\r\n*Expected:* App should not crash if view is extended pass the phone's screen\r\n\r\n*Note:*\r\n1. This error seems to occur on initial install of the app. After a couple of hours, the issue does not reappear again.\r\n2. Was not able to reproduce on the Nexus 4 (4.2.1)\r\n", "attachment": [ { "id": "35860", "filename": "droid1_error.txt", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-03-02T02:40:47.000+0000", "size": 4293, "mimeType": "text/plain" }, { "id": "35880", "filename": "fromSoasta.txt", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-03-04T19:36:47.000+0000", "size": 27212, "mimeType": "text/plain" }, { "id": "35859", "filename": "nexusS_error.txt", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-03-02T02:40:47.000+0000", "size": 8840, "mimeType": "text/plain" }, { "id": "35861", "filename": "PerformanceTestSuite.zip", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-03-02T02:40:47.000+0000", "size": 3843821, "mimeType": "application/zip" }, { "id": "35879", "filename": "wluuPerformanceTestSuite.zip", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-03-04T19:36:47.000+0000", "size": 3846074, "mimeType": "application/zip" } ], "flagged": false, "summary": "Android: View - App crashes if you click on a switch control at the end of a view that passes the phone's screen", "creator": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "environment": "SDK build: 3.0.0.GA, 3.0.2.GA\r\nTitanium Studio, build: 3.0.2.201302191606\r\nDevice: Droid 1 (2.2.3), Nexus S (4.1.2)", "comment": { "comments": [ { "id": "240578", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Changing severity of bug to blocker. Below is my reason:\n\nI've attached a modified app (wluuPerformanceTestSuite.zip) which uses a label control instead of switch control in the *basic vertical panning* and *basic horizontal panning* test. And, the horizontal and vertical views are extended by 500 dp. \n\nNow, in SOASTA TouchTest, while recording this new app, the app will crash and restart itself consistently (see fromSoasta.txt). It seems that the recording mechanism in SOASTA TouchTest is exposing this memory issue.", "updateAuthor": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-03-04T19:32:40.000+0000", "updated": "2013-03-04T19:32:40.000+0000" }, { "id": "242473", "author": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This is an issue with the window proxy being collected and it fails when we try to open it again in an event listener. Currently, only direct children of a window will keep a window proxy alive, but children that are several layers deep don't prevent the window proxy from being garbage collected by v8.\n\nWe need to spend some time exploring ways to properly keep track of these proxies, whether that be an array of children in views, or doing it through some V8 api.\n\nThe quick fix for now would be to move the window proxy into the scope of the event listener. In horizontalPanning.js, move 'myWin' inside the finishSwitch event listener. This will create a new window proxy every time it is clicked (I'm guessing that's what you wanted in the first place anyways).", "updateAuthor": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-15T17:30:48.000+0000", "updated": "2013-03-15T17:30:48.000+0000" }, { "id": "345913", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Tried to reproduce. Was not able to repro with latest 4.0 SDK, but with 3.5.0.GA could repro it only once per device install. Tested on 3 devices.\r\n\r\nEnvironment:\r\nAppc Studio : 4.0.0.201503062102\r\nTi SDK : 4.0.0.v20150312095013\r\nCLI : 3.5.0-dev\r\nAlloy : 1.5.1\r\nMAC Yosemite : 10.10.2\r\nNexus 5 - Android 5.0\r\nSony Experia - android 4.1.2\r\nSamsung S4 - android 4.4.2", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-03-13T01:21:04.000+0000", "updated": "2015-03-13T01:21:04.000+0000" }, { "id": "354388", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Marking as fixed in 4.0.0", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-06-05T02:03:38.000+0000", "updated": "2015-06-05T02:03:38.000+0000" }, { "id": "413161", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Can confirm that this was done.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-03-16T21:42:22.000+0000", "updated": "2017-03-16T21:42:22.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }