{ "id": "62862", "key": "TIMOB-2230", "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": "11239", "name": "Release 1.6.0 M06", "archived": true, "released": true, "releaseDate": "2011-01-24" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-04-17T01:58:29.000+0000", "created": "2011-04-15T03:14:13.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "android", "defect", "release-1.6.0" ], "versions": [], "issuelinks": [], "assignee": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-04-17T01:58:29.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": "{html}

I've attached a sample program.

\n

Basically if you have this structure.

\n

app.js
\nParentWindow.js
\nFolderA/ChildWindow.js

\n

app.js creates a window using FolderA/ChildWindow.js

\n

then in a button click handler in the event an attempt is made\nto create another new window using \"/ParentWindow.js\".

\n

This is broken in various forms in 1.4.0, 1.4.2 and 1.5.0

\n
\nI/WindowProxy(  613): (main) [2,6466] handleOpen\nE/TiUIWindow(  613): (main) [3,6469] BASEURL: app://FolderA/\nE/TiUIWindow(  613): (main) [1,6470] RELURL: /ParentWindow.js\nI/TiUIWindow(  613): (main) [1,6471] Window has URL: app:/null/ParentWindow.js\nE/TiContext(  613): (main) [1,6472] BaseURL for context is app:/null\nD/TiContext(  613): (main) [16,6488] Setting JS Context on org.appcelerator.titanium.TiContext@44cac1b8 to org.appcelerator.titanium.kroll.KrollBridge@44c9a768\nD/TiContext(  613): (main) [6,6494] Setting JS Context on org.appcelerator.titanium.TiContext@44cac1b8 to org.appcelerator.titanium.kroll.KrollBridge@44c9a768\nD/TiFileFactory(  613): (kroll$3) [7,6501] getting initial from parts: app:/null/ParentWindow.js\nE/KrollContext(  613): (kroll$3) [10,6511] IOException reading file: app:/null/ParentWindow.js\nE/KrollContext(  613): java.io.FileNotFoundException: /data/data/net.donthorp.adhoc/app_appdata/app:/null/ParentWindow.js\nE/KrollContext(  613):  at org.apache.harmony.luni.platform.OSFileSystem.open(OSFileSystem.java:244)\nE/KrollContext(  613):  at java.io.FileInputStream.<init>(FileInputStream.java:77)\nE/KrollContext(  613):  at org.appcelerator.titanium.io.TiFile.getInputStream(TiFile.java:219)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.evaluateScript(KrollContext.java:191)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.handleEvalFile(KrollContext.java:218)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.handleMessage(KrollContext.java:115)\nE/KrollContext(  613):  at android.os.Handler.dispatchMessage(Handler.java:95)\nE/KrollContext(  613):  at android.os.Looper.loop(Looper.java:123)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollHandlerThread.run(KrollHandlerThread.java:73)\nE/KrollContext(  613): (kroll$3) [38,6549] Error evaluating source: Wrapped java.io.FileNotFoundException: /data/data/net.donthorp.adhoc/app_appdata/app:/null/ParentWindow.js\nE/KrollContext(  613): org.mozilla.javascript.WrappedException: Wrapped java.io.FileNotFoundException: /data/data/net.donthorp.adhoc/app_appdata/app:/null/ParentWindow.js\nE/KrollContext(  613):  at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1781)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.evaluateScript(KrollContext.java:196)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.handleEvalFile(KrollContext.java:218)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.handleMessage(KrollContext.java:115)\nE/KrollContext(  613):  at android.os.Handler.dispatchMessage(Handler.java:95)\nE/KrollContext(  613):  at android.os.Looper.loop(Looper.java:123)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollHandlerThread.run(KrollHandlerThread.java:73)\nE/KrollContext(  613): Caused by: java.io.FileNotFoundException: /data/data/net.donthorp.adhoc/app_appdata/app:/null/ParentWindow.js\nE/KrollContext(  613):  at org.apache.harmony.luni.platform.OSFileSystem.open(OSFileSystem.java:244)\nE/KrollContext(  613):  at java.io.FileInputStream.<init>(FileInputStream.java:77)\nE/KrollContext(  613):  at org.appcelerator.titanium.io.TiFile.getInputStream(TiFile.java:219)\nE/KrollContext(  613):  at org.appcelerator.titanium.kroll.KrollContext.evaluateScript(KrollContext.java:191)\n
{html}", "attachment": [ { "id": "18127", "filename": "resources.zip", "author": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:14:14.000+0000", "size": 142372, "mimeType": "application/zip" }, { "id": "18126", "filename": "screen-shot-2010-10-31-at-101610-pm.png", "author": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:14:13.000+0000", "size": 72640, "mimeType": "image/png" } ], "flagged": false, "summary": "Android: Resolve URL Failing from Event Context", "creator": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "127887", "author": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

(from [7ccb480725d365c60861825bd867ce65d9fa6af5])\nuse the app:// prefix when path is set to null for absolute URLs\nadded a relative+absolute window URL drillbit test in ui
\nformatting cleanup in TiUrl/KrollContext, added TiC constants for\nKrollContext
\n[#2230 state:fixed-in-qa] \nhttps://github.com/appcelerator/titanium_mobile/commit/7ccb480725d3...

{html}", "updateAuthor": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:14:15.000+0000", "updated": "2011-04-15T03:14:15.000+0000" }, { "id": "127888", "author": { "name": "opiecyrus", "key": "opiecyrus", "displayName": "Opie Cyrus", "active": true, "timeZone": "America/Chicago" }, "body": "{html}

Verified with original test case.

{html}", "updateAuthor": { "name": "opiecyrus", "key": "opiecyrus", "displayName": "Opie Cyrus", "active": true, "timeZone": "America/Chicago" }, "created": "2011-04-15T03:14:15.000+0000", "updated": "2011-04-15T03:14:15.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }