{ "id": "79414", "key": "TIMOB-5046", "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": "12076", "description": "Mobile @ HQ Week", "name": "Sprint 2011-36", "archived": true, "released": true, "releaseDate": "2011-09-12" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-09-06T10:10:18.000+0000", "created": "2011-08-18T09:45:26.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "ios", "xml", "xmlparsing" ], "versions": [ { "id": "11570", "description": "", "name": "Release 1.7.2", "archived": true, "released": true, "releaseDate": "2011-07-21" } ], "issuelinks": [], "assignee": { "name": "vsingh", "key": "vsingh", "displayName": "Vikramjeet Singh", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-09-13T16:56:32.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.Problem\r\nOn TiSDK 1.7.2 app crashes while parsing XML local file. If parsing is done with 1.8.0 app doesn't crash. \r\n\r\nh5.Tested on\r\niOS Simulator 4.3\r\n\r\nh5.Repro Sequence\r\n{code:title=app.js}\r\nvar parser = function(xml) {\r\n var items = [];\r\n\r\n var nodes = xml.getElementsByTagName('m:properties');\r\n\r\n Ti.API.info(nodes.length + ' nodes found');\r\n for (var i = 0; i < nodes.length; i++) {\r\n Ti.API.info('parsing node '+ i);\r\n var item = {};\r\n\r\n item.MerchantLookupId = nodes.item(i).getElementsByTagName(\"d:MerchantLookupId\").item(0).text;\r\n item.Latitude = nodes.item(i).getElementsByTagName(\"d:Latitude\").item(0).text;\r\n item.Longitude = nodes.item(i).getElementsByTagName(\"d:Longitude\").item(0).text;\r\n item.IsDefaultAddress = nodes.item(i).getElementsByTagName(\"d:IsDefaultAddress\").item(0).text;\r\n item.Address = nodes.item(i).getElementsByTagName(\"d:Address\").item(0).text;\r\n item.City = nodes.item(i).getElementsByTagName(\"d:City\").item(0).text;\r\n item.StateProvince = nodes.item(i).getElementsByTagName(\"d:StateProvince\").item(0).text;\r\n item.ZIPPostalCode = nodes.item(i).getElementsByTagName(\"d:ZIPPostalCode\").item(0).text;\r\n item.PhoneNo = nodes.item(i).getElementsByTagName(\"d:PhoneNo\").item(0).text;\r\n item.Id = nodes.item(i).getElementsByTagName(\"d:Id\").item(0).text;\r\n\r\n items.push(item);\r\n }\r\n\r\n return items;\r\n};\r\nvar myFile = Titanium.Filesystem.getFile(Titanium.Filesystem.resourcesDirectory, 'Addresses.xml');\r\nvar contents = myFile.read();\r\nTi.API.info(myFile);\r\n\r\nvar xmlstr = contents.text;\r\n\r\nvar xml = Ti.XML.parseString(xmlstr);\r\n\r\nparser(xml);\r\n{code}\r\n\r\nh5.Console output\r\nSDK 1.7.2 can't parse file - App does crash\r\n{noformat}\r\n[INFO] T10718/1.0 (1.7.2.97c3689)\r\n\r\n[DEBUG] Analytics is enabled = YES\r\n\r\n[DEBUG] loading: /Users/egomez/Documents/Titanium Studio Workspace/T10718/Resources/app.js, resource: Users/egomez/Documents/Titanium Studio Workspace/T10718/Resources/app_js\r\n\r\n[INFO] /Users/egomez/Documents/Titanium Studio Workspace/T10718/Resources/Addresses.xml\r\n\r\n[INFO] 156 nodes found\r\n\r\n[INFO] parsing node 0\r\n\r\n[INFO] parsing node 1\r\n\r\n[INFO] parsing node 2\r\n\r\n[INFO] parsing node 3\r\n\r\n[INFO] parsing node 4\r\n\r\n[INFO] parsing node 5\r\n\r\n[INFO] parsing node 6\r\n\r\n[INFO] parsing node 7\r\n\r\n[INFO] parsing node 8\r\n\r\n[INFO] parsing node 9\r\n\r\n[INFO] parsing node 10\r\n\r\n[INFO] parsing node 11\r\n\r\n[INFO] parsing node 12\r\n\r\n[INFO] parsing node 13\r\n\r\n[INFO] parsing node 14\r\n\r\n[INFO] parsing node 15\r\n\r\n[INFO] parsing node 16\r\n\r\n[INFO] parsing node 17\r\n\r\n[INFO] parsing node 18\r\n\r\n[INFO] parsing node 19\r\n\r\n[INFO] parsing node 20\r\n\r\n[INFO] parsing node 21\r\n\r\n[INFO] parsing node 22\r\n\r\n[INFO] parsing node 23\r\n\r\n[INFO] parsing node 24\r\n\r\n[INFO] parsing node 25\r\n\r\n[INFO] parsing node 26\r\n\r\n[INFO] parsing node 27\r\n\r\n[INFO] parsing node 28\r\n\r\n[INFO] parsing node 29\r\n\r\n[INFO] parsing node 30\r\n\r\n[INFO] parsing node 31\r\n\r\n[INFO] parsing node 32\r\n\r\n[INFO] parsing node 33\r\n\r\n[INFO] parsing node 34\r\n\r\n[INFO] parsing node 35\r\n\r\n[INFO] parsing node 36\r\n\r\n[INFO] parsing node 37\r\n\r\n[INFO] parsing node 38\r\n\r\n[INFO] parsing node 39\r\n\r\n[INFO] parsing node 40\r\n\r\n[INFO] parsing node 41\r\n\r\n[INFO] parsing node 42\r\n\r\n[INFO] parsing node 43\r\n\r\n[INFO] parsing node 44\r\n\r\n[INFO] parsing node 45\r\n\r\n[INFO] parsing node 46\r\n\r\n[INFO] parsing node 47\r\n\r\n[INFO] parsing node 48\r\n\r\n[INFO] parsing node 49\r\n\r\n[INFO] parsing node 50\r\n\r\n[INFO] parsing node 51\r\n\r\n[INFO] parsing node 52\r\n\r\n[INFO] parsing node 53\r\n\r\n[INFO] parsing node 54\r\n\r\n[INFO] parsing node 55\r\n\r\n[INFO] parsing node 56\r\n\r\n[INFO] parsing node 57\r\n\r\n[INFO] parsing node 58\r\n\r\n[INFO] parsing node 59\r\n\r\n[INFO] parsing node 60\r\n\r\n[INFO] parsing node 61\r\n\r\n[INFO] parsing node 62\r\n\r\n[INFO] parsing node 63\r\n\r\n[INFO] parsing node 64\r\n\r\n[INFO] parsing node 65\r\n\r\n[INFO] parsing node 66\r\n\r\n[INFO] parsing node 67\r\n\r\n[INFO] parsing node 68\r\n\r\n[INFO] parsing node 69\r\n\r\n[INFO] parsing node 70\r\n\r\n[INFO] parsing node 71\r\n\r\n[INFO] parsing node 72\r\n\r\n[INFO] parsing node 73\r\n\r\n[INFO] parsing node 74\r\n\r\n[INFO] parsing node 75\r\n\r\n[INFO] parsing node 76\r\n\r\n[INFO] parsing node 77\r\n\r\n[INFO] parsing node 78\r\n\r\n[INFO] parsing node 79\r\n\r\n[INFO] parsing node 80\r\n\r\n[INFO] parsing node 81\r\n\r\n[INFO] parsing node 82\r\n\r\n[INFO] parsing node 83\r\n\r\n[INFO] parsing node 84\r\n\r\n[INFO] parsing node 85\r\n\r\n[INFO] parsing node 86\r\n\r\n[INFO] parsing node 87\r\n\r\n[INFO] parsing node 88\r\n\r\n[INFO] parsing node 89\r\n\r\n[INFO] parsing node 90\r\n\r\n[INFO] parsing node 91\r\n\r\n[INFO] parsing node 92\r\n\r\n[INFO] parsing node 93\r\n\r\n[INFO] parsing node 94\r\n\r\n[INFO] parsing node 95\r\n\r\n[INFO] parsing node 96\r\n\r\n[INFO] parsing node 97\r\n\r\n[INFO] parsing node 98\r\n\r\n[INFO] parsing node 99\r\n\r\n[INFO] parsing node 100\r\n\r\n[INFO] parsing node 101\r\n\r\n[INFO] parsing node 102\r\n\r\n[INFO] parsing node 103\r\n\r\n[INFO] parsing node 104\r\n\r\n[INFO] parsing node 105\r\n\r\n[INFO] parsing node 106\r\n\r\n[INFO] parsing node 107\r\n\r\n[INFO] parsing node 108\r\n\r\n[INFO] parsing node 109\r\n\r\n[INFO] parsing node 110\r\n\r\n[INFO] parsing node 111\r\n\r\n[INFO] parsing node 112\r\n\r\n[INFO] parsing node 113\r\n\r\n[INFO] parsing node 114\r\n\r\n[INFO] parsing node 115\r\n\r\n[INFO] parsing node 116\r\n\r\n[INFO] parsing node 117\r\n\r\n[INFO] parsing node 118\r\n\r\n[INFO] parsing node 119\r\n\r\n[INFO] parsing node 120\r\n\r\n[INFO] parsing node 121\r\n\r\n[INFO] parsing node 122\r\n\r\n[INFO] parsing node 123\r\n\r\n[INFO] parsing node 124\r\n\r\n[INFO] parsing node 125\r\n\r\n[INFO] parsing node 126\r\n\r\n[INFO] parsing node 127\r\n\r\n[INFO] parsing node 128\r\n\r\n[INFO] parsing node 129\r\n\r\n[INFO] parsing node 130\r\n\r\n[INFO] parsing node 131\r\n\r\n[INFO] parsing node 132\r\n\r\n[INFO] parsing node 133\r\n\r\n[INFO] parsing node 134\r\n\r\n[INFO] parsing node 135\r\n\r\n[INFO] parsing node 136\r\n\r\n[INFO] parsing node 137\r\n\r\n[INFO] parsing node 138\r\n\r\n[INFO] parsing node 139\r\n\r\n[INFO] parsing node 140\r\n\r\n[INFO] parsing node 141\r\n\r\n[INFO] parsing node 142\r\n\r\n[INFO] parsing node 143\r\n\r\n[INFO] parsing node 144\r\n\r\n[INFO] parsing node 145\r\n\r\n[INFO] parsing node 146\r\n\r\n[INFO] parsing node 147\r\n\r\n[INFO] parsing node 148\r\n\r\n[INFO] parsing node 149\r\n\r\n[DEBUG] App Spec: specified by path /Users/egomez/Documents/Titanium Studio Workspace/T10718/build/iphone/build/Debug-iphonesimulator/T10718.app\r\n[DEBUG] SDK Root: path=/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk version=4.3 name=Simulator - iOS 4.3\r\n[DEBUG] using device family iphone\r\n[DEBUG] Session started\r\n[DEBUG] Session did end with error (null)\r\n[INFO] Application has exited from Simulator\r\n{noformat}\r\n\r\n\r\nSDK 1.8.0 parses file completely - App doesn't crash (156 nodes parsed correctly)\r\n{noformat}\r\n[INFO] Titanium SDK version: 1.8.0.v20110805142555\r\n[INFO] iPhone Device family: universal\r\n[INFO] iPhone SDK version: 4.3\r\n[INFO] iPhone simulated device: iphone\r\n[DEBUG] executing command: /usr/bin/killall iPhone Simulator\r\n[DEBUG] No matching processes belonging to you were found\r\n[DEBUG] finding old log files\r\n[DEBUG] executing command: mdfind -onlyin /Users/egomez/Library/Application Support/iPhone Simulator/4.3 -name 6ae9119c-e11d-4e9c-83c0-cb009814af5d.log\r\n[INFO] Launching application in Simulator\r\n[INFO] Launched application in Simulator (6.36 seconds)\r\n[DEBUG] executing command: xcodebuild -version\r\n[DEBUG] Xcode 4.0.2\r\n[DEBUG] Build version 4A2002a\r\n[INFO] Found 4.3.2 patch installed\r\n[INFO] Application started\r\n\r\n[DEBUG] reading stylesheet from: /Users/egomez/Library/Application Support/iPhone Simulator/4.3.2/Applications/073352C5-4942-4741-B60D-F45DB38D3C14/T10718.app/stylesheet.plist\r\n\r\n[INFO] T10718/1.0 (1.8.0.v20110805142555.02da6d9...)\r\n\r\n[DEBUG] Analytics is enabled = YES\r\n\r\n[DEBUG] loading: /Users/egomez/Library/Application Support/iPhone Simulator/4.3.2/Applications/073352C5-4942-4741-B60D-F45DB38D3C14/T10718.app/app.js, resource: app_js\r\n\r\n[INFO] /Users/egomez/Library/Application Support/iPhone Simulator/4.3.2/Applications/073352C5-4942-4741-B60D-F45DB38D3C14/T10718.app/Addresses.xml\r\n\r\n[INFO] 156 nodes found\r\n\r\n[INFO] parsing node 0\r\n\r\n[INFO] parsing node 1\r\n\r\n[INFO] parsing node 2\r\n\r\n[INFO] parsing node 3\r\n\r\n[INFO] parsing node 4\r\n\r\n[INFO] parsing node 5\r\n\r\n[INFO] parsing node 6\r\n\r\n[INFO] parsing node 7\r\n\r\n[INFO] parsing node 8\r\n\r\n[INFO] parsing node 9\r\n\r\n[INFO] parsing node 10\r\n\r\n[INFO] parsing node 11\r\n\r\n[INFO] parsing node 12\r\n\r\n[INFO] parsing node 13\r\n\r\n[INFO] parsing node 14\r\n\r\n[INFO] parsing node 15\r\n\r\n[INFO] parsing node 16\r\n\r\n[INFO] parsing node 17\r\n\r\n[INFO] parsing node 18\r\n\r\n[INFO] parsing node 19\r\n\r\n[INFO] parsing node 20\r\n\r\n[INFO] parsing node 21\r\n\r\n[INFO] parsing node 22\r\n\r\n[INFO] parsing node 23\r\n\r\n[INFO] parsing node 24\r\n\r\n[INFO] parsing node 25\r\n\r\n[INFO] parsing node 26\r\n\r\n[INFO] parsing node 27\r\n\r\n[INFO] parsing node 28\r\n\r\n[INFO] parsing node 29\r\n\r\n[INFO] parsing node 30\r\n\r\n[INFO] parsing node 31\r\n\r\n[INFO] parsing node 32\r\n\r\n[INFO] parsing node 33\r\n\r\n[INFO] parsing node 34\r\n\r\n[INFO] parsing node 35\r\n\r\n[INFO] parsing node 36\r\n\r\n[INFO] parsing node 37\r\n\r\n[INFO] parsing node 38\r\n\r\n[INFO] parsing node 39\r\n\r\n[INFO] parsing node 40\r\n\r\n[INFO] parsing node 41\r\n\r\n[INFO] parsing node 42\r\n\r\n[INFO] parsing node 43\r\n\r\n[INFO] parsing node 44\r\n\r\n[INFO] parsing node 45\r\n\r\n[INFO] parsing node 46\r\n\r\n[INFO] parsing node 47\r\n\r\n[INFO] parsing node 48\r\n\r\n[INFO] parsing node 49\r\n\r\n[INFO] parsing node 50\r\n\r\n[INFO] parsing node 51\r\n\r\n[INFO] parsing node 52\r\n\r\n[INFO] parsing node 53\r\n\r\n[INFO] parsing node 54\r\n\r\n[INFO] parsing node 55\r\n\r\n[INFO] parsing node 56\r\n\r\n[INFO] parsing node 57\r\n\r\n[INFO] parsing node 58\r\n\r\n[INFO] parsing node 59\r\n\r\n[INFO] parsing node 60\r\n\r\n[INFO] parsing node 61\r\n\r\n[INFO] parsing node 62\r\n\r\n[INFO] parsing node 63\r\n\r\n[INFO] parsing node 64\r\n\r\n[INFO] parsing node 65\r\n\r\n[INFO] parsing node 66\r\n\r\n[INFO] parsing node 67\r\n\r\n[INFO] parsing node 68\r\n\r\n[INFO] parsing node 69\r\n\r\n[INFO] parsing node 70\r\n\r\n[INFO] parsing node 71\r\n\r\n[INFO] parsing node 72\r\n\r\n[INFO] parsing node 73\r\n\r\n[INFO] parsing node 74\r\n\r\n[INFO] parsing node 75\r\n\r\n[INFO] parsing node 76\r\n\r\n[INFO] parsing node 77\r\n\r\n[INFO] parsing node 78\r\n\r\n[INFO] parsing node 79\r\n\r\n[INFO] parsing node 80\r\n\r\n[INFO] parsing node 81\r\n\r\n[INFO] parsing node 82\r\n\r\n[INFO] parsing node 83\r\n\r\n[INFO] parsing node 84\r\n\r\n[INFO] parsing node 85\r\n\r\n[INFO] parsing node 86\r\n\r\n[INFO] parsing node 87\r\n\r\n[INFO] parsing node 88\r\n\r\n[INFO] parsing node 89\r\n\r\n[INFO] parsing node 90\r\n\r\n[INFO] parsing node 91\r\n\r\n[INFO] parsing node 92\r\n\r\n[INFO] parsing node 93\r\n\r\n[INFO] parsing node 94\r\n\r\n[INFO] parsing node 95\r\n\r\n[INFO] parsing node 96\r\n\r\n[INFO] parsing node 97\r\n\r\n[INFO] parsing node 98\r\n\r\n[INFO] parsing node 99\r\n\r\n[INFO] parsing node 100\r\n\r\n[INFO] parsing node 101\r\n\r\n[INFO] parsing node 102\r\n\r\n[INFO] parsing node 103\r\n\r\n[INFO] parsing node 104\r\n\r\n[INFO] parsing node 105\r\n\r\n[INFO] parsing node 106\r\n\r\n[INFO] parsing node 107\r\n\r\n[INFO] parsing node 108\r\n\r\n[INFO] parsing node 109\r\n\r\n[INFO] parsing node 110\r\n\r\n[INFO] parsing node 111\r\n\r\n[INFO] parsing node 112\r\n\r\n[INFO] parsing node 113\r\n\r\n[INFO] parsing node 114\r\n\r\n[INFO] parsing node 115\r\n\r\n[INFO] parsing node 116\r\n\r\n[INFO] parsing node 117\r\n\r\n[INFO] parsing node 118\r\n\r\n[INFO] parsing node 119\r\n\r\n[INFO] parsing node 120\r\n\r\n[INFO] parsing node 121\r\n\r\n[INFO] parsing node 122\r\n\r\n[INFO] parsing node 123\r\n\r\n[INFO] parsing node 124\r\n\r\n[INFO] parsing node 125\r\n\r\n[INFO] parsing node 126\r\n\r\n[INFO] parsing node 127\r\n\r\n[INFO] parsing node 128\r\n\r\n[INFO] parsing node 129\r\n\r\n[INFO] parsing node 130\r\n\r\n[INFO] parsing node 131\r\n\r\n[INFO] parsing node 132\r\n\r\n[INFO] parsing node 133\r\n\r\n[INFO] parsing node 134\r\n\r\n[INFO] parsing node 135\r\n\r\n[INFO] parsing node 136\r\n\r\n[INFO] parsing node 137\r\n\r\n[INFO] parsing node 138\r\n\r\n[INFO] parsing node 139\r\n\r\n[INFO] parsing node 140\r\n\r\n[INFO] parsing node 141\r\n\r\n[INFO] parsing node 142\r\n\r\n[INFO] parsing node 143\r\n\r\n[INFO] parsing node 144\r\n\r\n[INFO] parsing node 145\r\n\r\n[INFO] parsing node 146\r\n\r\n[INFO] parsing node 147\r\n\r\n[INFO] parsing node 148\r\n\r\n[INFO] parsing node 149\r\n\r\n[INFO] parsing node 150\r\n\r\n[INFO] parsing node 151\r\n\r\n[INFO] parsing node 152\r\n\r\n[INFO] parsing node 153\r\n\r\n[INFO] parsing node 154\r\n\r\n[INFO] parsing node 155\r\n\r\n[DEBUG] application booted in 424.836993 ms\r\n\r\nTerminating in response to SpringBoard's termination.\r\n{noformat}\r\n\r\nh5.Associated HD ticket\r\nENT customer relying on this, http://appc.me/c/APP-163199\r\n\r\nh5.Additional info\r\n\"Addresses.xml\" file to be read is attached. Let me know please if anymore info is needed, thanks.", "attachment": [ { "id": "22608", "filename": "Addresses.xml", "author": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2011-08-18T09:45:26.000+0000", "size": 383419, "mimeType": "text/xml" } ], "flagged": false, "summary": "iOS: Problems parsing XMLs file", "creator": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "environment": "Product: Mobile SDK - 1.7.2\r\nPlatform OS: iOS 4.3.2", "comment": { "comments": [ { "id": "165068", "author": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "body": "CE says this is resolved fixed.", "updateAuthor": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-09-06T10:10:18.000+0000", "updated": "2011-09-06T10:10:18.000+0000" }, { "id": "165937", "author": { "name": "vsingh", "key": "vsingh", "displayName": "Vikramjeet Singh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Resolved.\n\nTested On: \nMac OSX Lion \nTiMob: 1.8.0.v20110906155354 \nTiStud: 1.0.5.201109091616 \n\nDevices Used: \niPhone Simulator 4.3 \niPod 3G version 4.0.2 \niPhone4 version 4.3.4", "updateAuthor": { "name": "vsingh", "key": "vsingh", "displayName": "Vikramjeet Singh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-09-13T16:56:32.000+0000", "updated": "2011-09-13T16:56:32.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }