{ "id": "62869", "key": "TIMOB-2237", "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": "11238", "name": "Release 1.6.0 M05", "archived": true, "released": true, "releaseDate": "2011-01-17" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-04-17T01:58:30.000+0000", "created": "2011-04-15T03:14:26.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "android", "defect", "release-1.6.0" ], "versions": [], "issuelinks": [], "assignee": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-04-17T01:58:30.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}
On 1_4_X branch line 84 \nTiUIScrollableView.java the showPager method assumes that the\nscrollable view has \"showPagingControl\" as a property.
\nUsing the trackball on a G1 caused a customer app to crash with\na NPE. See Helpdesk\n52401
\n~~~
\nE/TiUncaughtHandler( 919): (main) [2072,15484] Sending event:\nexception on thread: main msg:java.lang.NullPointerException
\nE/TiUncaughtHandler( 919): java.lang.NullPointerException
\nE/TiUncaughtHandler( 919): at\norg.appcelerator.titanium.util.TiConvert.toBoolean(TiConvert.java:223)
\nE/TiUncaughtHandler( 919): at\nti.modules.titanium.ui.widget.TiUIScrollableView.showPager(TiUIScrollableView.java:84)
\nE/TiUncaughtHandler( 919): at\nti.modules.titanium.ui.ScrollableViewProxy.handleMessage(ScrollableViewProxy.java:69)
\nE/TiUncaughtHandler( 919): at\nandroid.os.Handler.dispatchMessage(Handler.java:95)
\nE/TiUncaughtHandler( 919): at\nandroid.os.Looper.loop(Looper.java:123)
\nE/TiUncaughtHandler( 919): at\nandroid.app.ActivityThread.main(ActivityThread.java:4203)
\nE/TiUncaughtHandler( 919): at\njava.lang.reflect.Method.invokeNative(Native Method)
\nE/TiUncaughtHandler( 919): at\njava.lang.reflect.Method.invoke(Method.java:521)
\nE/TiUncaughtHandler( 919): at\ncom.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
\nE/TiUncaughtHandler( 919): at\ncom.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
\nE/TiUncaughtHandler( 919): at dalvik.system.NativeStart.main(Native\nMethod)
\n~~~
Was in wrong milestone.
(from [2d56a930ddc126adc94f3bbb8dcabe3fb5086f66])\n[#2237 state:fixed-in-qa] updated ScrollableView\nto check for null view
\nscrollableView checks for null view before trying to show\npagingControl
\n\nhttps://github.com/appcelerator/titanium_mobile/commit/2d56a930ddc1...
Test app attached. Steps to verify fix:
\n1) Run test app
\n2) Click on \"Open ScrollableView\"
\n3) Click on \"Click me then look a the log!\"
\n4) Look at the log and you should see two entries for setting the\npaging control. This would result in a exception before.
Thanks
\nOpie
Verified on G1/1.6 and Nexus One/2.2.1 using build #e1cb22a
\nUsed scrollable view test.