{ "id": "153211", "key": "TIMOB-19996", "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": "14826", "description": "Release 5.1.0-remaining iOS9 features, Android M features", "name": "Release 5.1.0", "archived": false, "released": true, "releaseDate": "2015-11-20" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2015-11-16T23:10:58.000+0000", "created": "2015-11-16T20:57:05.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "qe-5.1.0", "regression" ], "versions": [ { "id": "14826", "description": "Release 5.1.0-remaining iOS9 features, Android M features", "name": "Release 5.1.0", "archived": false, "released": true, "releaseDate": "2015-11-20" } ], "issuelinks": [ { "id": "49861", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "150209", "key": "TIMOB-19633", "fields": { "summary": "iOS: AUDIO_SESSION_CATEGORY_AMBIENT stops background music", "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": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2015-11-16T23:10:58.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": "h5. Description:\r\n*This is a regression from 5.0.2.GA*\r\nSound fails to play when an app is built with Ti SDK {{5.1.0}}. The following error occurs attempting to play a sound from a device:\r\n\r\n{code:java}\r\nNov 16 12:48:33 Future-Angle AudioTester[1141] : *** -[NSLock lock]: deadlock ( '(null)')\r\nNov 16 12:48:33 Future-Angle AudioTester[1141] : *** Break on _NSLockError() to debug.\r\n{code}\r\n\r\nThe bug was originally found when running the sound test cases in KitchenSink, but the same issue occurs when isolated into a separate app.\r\n\r\nh5. Steps to reproduce:\r\n1. Create a Classic project.\r\n2. Include attached .wav file to project directory > Resources > etc \r\n3. Add following demo code to app.js: \r\n{code:java}\r\nvar win = Titanium.UI.createWindow({\r\n\t\ttitle: \"Window One\"\r\n\t});\r\n\t\t\r\n\t//TODO: USE OBJECT\r\n\tvar sound = Titanium.Media.createSound();\r\n\tsound.url='/etc/cricket.wav'; // For testing #1913\r\n\t\r\n\t//\r\n\t// PLAY\r\n\t//\r\n\tvar play = Titanium.UI.createButton({\r\n\t\ttitle:'Play',\r\n\t\theight:40,\r\n\t\twidth:145,\r\n\t\tleft:10,\r\n\t\ttop:10\r\n\t});\r\n\tplay.addEventListener('click', function()\r\n\t{\r\n\t\tsound.play();\t\t\r\n\t});\r\n\twin.add(play);\r\n\t\r\nwin.open();\r\n{code}\r\n3. Run app to device.\r\n4. Press play.\r\n\r\nh5. Result:\r\nReceive {{deadlock}} error and sound fails to play.\r\n\r\nh5. Expected Result:\r\napp should not deadlock and should succeed in playing the sample file.", "attachment": [ { "id": "57522", "filename": "cricket.wav", "author": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "created": "2015-11-16T20:56:45.000+0000", "size": 80923, "mimeType": "audio/x-wav" } ], "flagged": false, "summary": "iOS: deadlock occurs on sound.play", "creator": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "subtasks": [], "reporter": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "environment": "Mac OSX El Capitan 10.11 (15A284)\r\nTi SDK: 5.1.0.v20151113005238 \r\nAppc Studio: 4.4.0.201511130407\r\nAppc NPM: 4.2.1\r\nAppc CLI: 5.1.0-54\r\nTi CLI: 5.0.4\r\nAlloy: 1.7.25\r\nXcode 7.1(7B91b)\r\nNode v0.12.7\r\nproduction", "comment": { "comments": [ { "id": "370442", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR pending https://github.com/appcelerator/titanium_mobile/pull/7450", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-11-16T21:54:30.000+0000", "updated": "2015-11-16T21:54:30.000+0000" }, { "id": "370457", "author": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "body": "Verified as fixed, using the latest Ti SDK build: {{5.1.0.v20151116142031}} I was able to produce sound both on device & simulators. Tested the above sample code as well as KitchenSink, with no issue.\r\n\r\niPhone 6s Device & Sim (9.1)\r\niPhone 6 Device & Sim (8.4)\r\nMac OSX El Capitan 10.11 (15A284)\r\nTi SDK: 5.1.0.v20151116142031 \r\nAppc Studio: 4.4.0.201511130407\r\nAppc NPM: 4.2.1\r\nAppc CLI: 5.1.0-54\r\nTi CLI: 5.0.4\r\nAlloy: 1.7.25\r\nXcode 7.1(7B91b)\r\nNode v0.12.7\r\nproduction\r\n\r\n*Closing ticket.*", "updateAuthor": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "created": "2015-11-16T23:10:13.000+0000", "updated": "2015-11-16T23:10:13.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }