{ "id": "169631", "key": "TIMOB-25192", "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": "18429", "description": "", "name": "Hyperloop 2.2.0", "archived": false, "released": true, "releaseDate": "2017-10-16" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-09-25T12:00:04.000+0000", "created": "2017-08-24T17:55:27.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [ { "id": "19878", "name": "Hyperloop 2.1.3", "archived": false, "released": true, "releaseDate": "2017-08-04" } ], "issuelinks": [], "assignee": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2017-11-07T01:23:02.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": "13715", "name": "Hyperloop", "description": "Hyperloop project" }, { "id": "12642", "name": "Windows", "description": "Windows authoring support" } ], "description": "h5. Description \r\nWhen evaluating a .NET's null value retrieved using Hyperloop (Windows; Hyperloop version 2.1.1) , the application crashes. Take for instance:\r\n{code}\r\nvar PopupMenu = require('Windows.UI.Popups.PopupMenu');\r\nvar UICommand = require('Windows.UI.Popups.UICommand');\r\nvar Point = require('Windows.Foundation.Point');\r\n\r\nvar menu = new PopupMenu();\r\nvar alertHiCommand = new UICommand(\"Hi!\");\r\nvar alertByeCommend = new UICommand(\"Bye!\");\r\n\t\r\nvar commands = menu.Commands;\r\ncommands.Add(alertHiCommand);\r\ncommands.Add(alertByeCommend);\r\n\r\nfunction popupMenu(e)\r\n{\r\n\tvar p = new Point(e.y,e.x);\r\n\tmenu.ShowAsync(p).then(function(selectedCommand)\r\n\t{\r\n\t\talert(selectedCommand);\r\n\t}, function(err) {alert(err)});\r\n}\r\n{code}\r\n\r\nIf no command was selected, the application crashes. Otherwise, it works as expected.", "attachment": [], "flagged": false, "summary": "Windows: Evaluating a null value from Hyperloop crashes the App", "creator": { "name": "vvazquezmontero", "key": "vvazquezmontero", "displayName": "Victor Vazquez Montero", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "vvazquezmontero", "key": "vvazquezmontero", "displayName": "Victor Vazquez Montero", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "closedSprints": [ { "id": 948, "state": "closed", "name": "2017 Sprint 19 SDK", "startDate": "2017-09-10T21:24:51.562Z", "endDate": "2017-09-24T21:24:00.000Z", "completeDate": "2017-09-25T17:49:27.460Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "427441", "author": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "body": "https://github.com/appcelerator/hyperloop.next/pull/204", "updateAuthor": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-08-31T02:01:57.000+0000", "updated": "2017-08-31T02:01:57.000+0000" }, { "id": "428405", "author": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-09-25T12:02:18.000+0000", "updated": "2017-09-25T12:02:18.000+0000" }, { "id": "428662", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Verified ticket in Hyperloop 2.2.0 evaluating null no longer crashes the application\r\n\r\nStudio: 4.10.0.201709271713\r\nSDK: 6.2.2.GA, 6.3.0.v20170929040536\r\nAppc NPM: 4.2.9\r\nAppc CLI: 6.2.4\r\nHyperloop: 2.2.0RC2", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2017-10-03T10:43:49.000+0000", "updated": "2017-10-03T10:43:49.000+0000" }, { "id": "430193", "author": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "body": "[~vvazquezmontero] How about this? Expected: No crash when you click app window (popup appears) and then you should be able to click elsewhere to cancel popup.\r\n\r\n{code}\r\nvar win = Ti.UI.createWindow({ backgroundColor: 'green' });\r\nvar PopupMenu = require('Windows.UI.Popups.PopupMenu');\r\nvar UICommand = require('Windows.UI.Popups.UICommand');\r\nvar Point = require('Windows.Foundation.Point');\r\n\r\nvar menu = new PopupMenu();\r\nvar alertHiCommand = new UICommand(\"Hi!\");\r\nvar alertByeCommend = new UICommand(\"Bye!\");\r\n\r\nvar commands = menu.Commands;\r\ncommands.Add(alertHiCommand);\r\ncommands.Add(alertByeCommend);\r\n\r\nfunction popupMenu(e) {\r\n var p = new Point(e.y, e.x);\r\n menu.ShowAsync(p).then(function (selectedCommand) {\r\n if (selectedCommand == null) {\r\n alert('nothing selected');\r\n } else {\r\n alert(selectedCommand.Label);\r\n }\r\n }, function (err) { alert(err) });\r\n}\r\n\r\nwin.addEventListener('click', function (e) {\r\n popupMenu(e);\r\n});\r\n\r\nwin.open();\r\n{code}", "updateAuthor": { "name": "kiguchi", "key": "kota", "displayName": "Kota Iguchi", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-11-07T01:23:02.000+0000", "updated": "2017-11-07T01:23:02.000+0000" } ], "maxResults": 7, "total": 7, "startAt": 0 } } }