{ "id": "114849", "key": "TIMOB-14221", "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": "15699", "description": "2013 Sprint 21", "name": "2013 Sprint 21", "archived": true, "released": true, "releaseDate": "2013-10-18" }, { "id": "15700", "description": "2013 Sprint 21 API", "name": "2013 Sprint 21 API", "archived": true, "released": true, "releaseDate": "2013-10-18" }, { "id": "14982", "description": "Release 3.2.0", "name": "Release 3.2.0", "archived": false, "released": true, "releaseDate": "2013-12-19" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-10-15T21:12:53.000+0000", "created": "2013-05-23T15:43:59.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "module_textarea", "qe-testadded", "textarea", "triage" ], "versions": [ { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" } ], "issuelinks": [ { "id": "29041", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "99296", "key": "TIMOB-10460", "fields": { "summary": "iOS: implement setSelection() for TextField and TextArea", "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": "2014-06-19T12:42:44.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": "Calling setSelection always throws this error - within context of supplied app.js. (and in my app) \r\n\r\nvoid _WebThreadLockFromAnyThread(bool), 0xa8206d0: Obtaining the web lock from a thread other than the main thread or the web thread. UIKit should not be called from a secondary thread.\r\n\r\nPlease see the app.js as it now consistently reproduces this error.", "attachment": [ { "id": "39134", "filename": "app.js", "author": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "created": "2013-05-28T17:15:03.000+0000", "size": 1417, "mimeType": "text/javascript" }, { "id": "39155", "filename": "nirvanaipad 28-05-13 7-45 PM.crash", "author": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "created": "2013-05-28T23:48:35.000+0000", "size": 34498, "mimeType": "application/octet-stream" } ], "flagged": false, "summary": "iOS: Calling TextArea.setSelection gives error, hard crash", "creator": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "environment": "3.1.0.GA, iOS 6.1, iPad", "comment": { "comments": [ { "id": "253693", "author": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "body": "It would be useful if you could create a test case regardless of whether it crashes or not for us to test in the meantime.\n\nAre you running it on a device or the simulator? Reading related issues gave me the impression it was a simulator problem.", "updateAuthor": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-05-23T18:44:08.000+0000", "updated": "2013-05-23T18:44:08.000+0000" }, { "id": "253837", "author": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "body": "Hey Daniel,\n\nyeah, its on the simulator. Haven't tried it on device yet. I'll work on making a test case which matches closer my use in app. ", "updateAuthor": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "created": "2013-05-24T13:59:02.000+0000", "updated": "2013-05-24T13:59:02.000+0000" }, { "id": "254306", "author": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "body": "Hey Daniel. Good news! I've managed to do a simple repro of the bug :) \n\nI've attached it to the ticket. \n\nLet me know if I can offer any more info. ", "updateAuthor": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "created": "2013-05-28T17:14:31.000+0000", "updated": "2013-05-28T17:14:31.000+0000" }, { "id": "254452", "author": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "body": "More details:\n\nIt is happening on device. I ran my app on device (ipad mini), seeing the same error w/ crash: nirvanaipad[38597:3e03] void _WebThreadLockFromAnyThread(bool), 0x1f510550: Obtaining the web lock from a thread other than the main thread or the web thread. UIKit should not be called from a secondary thread.\n\nI'm including a on this ticket. \n", "updateAuthor": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "created": "2013-05-28T23:46:55.000+0000", "updated": "2013-05-28T23:46:55.000+0000" }, { "id": "256051", "author": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "body": "bump. now that there's a repo, any chance of moving this to a TI-MOB?", "updateAuthor": { "name": "meeech", "key": "meeech", "displayName": "Mitchell Amihod", "active": true, "timeZone": "America/New_York" }, "created": "2013-06-05T05:24:34.000+0000", "updated": "2013-06-05T05:24:34.000+0000" }, { "id": "271851", "author": { "name": "ygoldfeld", "key": "ygoldfeld", "displayName": "Yuri Goldfeld", "active": true, "timeZone": "America/Los_Angeles" }, "body": "We are going to fix this in our custom Ti SDK. If it helps:\r\n\r\nthere are at least 2 bugs in the iOS implementation of Ti.UI.TextField.setSelection(). One is the immediate cause of the _WebThreadLockFromAnyThread error message: the setSelection() code in the proxy grabs the UITextField directly (not on main thread) and tries to sanity-check using its length property. Even if this problem is fixed (say, by moving that sanity checking directly into non-proxy code), setSelection() will still not work, because setSelectionFrom () then calls becomeFirstReponder on self, instead of on [self textWidgetView].\r\n\r\nCurrently we have no time to issue pull request, but perhaps the above will help.\r\n\r\nP.S. Above comment probably applies equally to TextArea.", "updateAuthor": { "name": "ygoldfeld", "key": "ygoldfeld", "displayName": "Yuri Goldfeld", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-09-18T21:09:38.000+0000", "updated": "2013-09-18T21:10:59.000+0000" }, { "id": "274933", "author": { "name": "ygoldfeld", "key": "ygoldfeld", "displayName": "Yuri Goldfeld", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I would like to humbly point out again that TextArea.setSelection() and TextField.setSelection() in no way work in iOS at this moment (unless this has been stealthily fixed in 3.1.2 or 3.1.3, in which case this ticket should be resolved).\r\n\r\nThis is not just some crash in some particular hardware combination. Based on the code, it's a straight-up regression.", "updateAuthor": { "name": "ygoldfeld", "key": "ygoldfeld", "displayName": "Yuri Goldfeld", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-10-14T01:59:59.000+0000", "updated": "2013-10-14T01:59:59.000+0000" }, { "id": "275175", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Pull pending against master\r\nhttps://github.com/appcelerator/titanium_mobile/pull/4790", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-10-15T19:21:51.000+0000", "updated": "2013-10-15T19:21:51.000+0000" }, { "id": "275411", "author": { "name": "pmishra", "key": "pmishra", "displayName": "Paras Mishra", "active": true, "timeZone": "Asia/Kolkata" }, "body": "TextArea.setSelection works fine and app does not crash.\r\n\r\nVerified fix on:\r\nDevice : iPad 4, iOS version: 6\r\nSDK: 3.2.0.v20131016191202\r\nCLI version : 3.2.0\r\nOS : MAC OSX 10.8.4\r\nAlloy : 1.2.2\r\nAppcelerator Studio, build: 3.2.0.201310112258\r\nXCode : 5", "updateAuthor": { "name": "pmishra", "key": "pmishra", "displayName": "Paras Mishra", "active": true, "timeZone": "Asia/Kolkata" }, "created": "2013-10-17T12:06:07.000+0000", "updated": "2013-10-17T12:06:07.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }