New issue
Advanced search Search tips

Issue 693265 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug
Proj-XR



Sign in to add a comment

Chrome Canary crashes on sketchfab website after loading 3D model

Project Member Reported by vsupruniuk@google.com, Feb 16 2017

Issue description

Chrome Version: Chrome Canary 58.0.3012.0
OS: Android K, L, M, N
VrCore 1.3.nightly_20170214_RC002.dogfood
VrCore build: https://x20.corp.google.com/teams/vr-framework/releases/vrcore/nightly_20170214/nightly_20170214_RC002/vrcore_dogfood_arm64

What steps will reproduce the problem?
1. Install Chrome Canary from Play Store
2. Install most recent VrCore nightly build. This step is not necessary for N devices, issue is also reproducible with the production VR services.
3. Open sketchfab webpage https://sketchfab.com/sketchfab/collections/sketchfab-vr-showcase-mobile
4. Tap on model "Mars One".

What is the expected result?
Model should be loaded and rendered correctly.

What happens instead?
"Unfortunately, Chrome Canary has stopped" popup appears.
Crash ID Chrome (Server ID: 8cfbfb3580000000)
Crash report uploaded on Thursday, February 16, 2017 at 3:45:37 PM
 

Reproducibility is 100% on the devices:
- "Nexus 6P Android N"
- "LG-G3 Android L"
- "Nexus 5 Android K"	

 
I'm able to reproduce locally on a Pixel with production VRCore. Got the following stack traces:

02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl: Unable to instantiate VrShellImpl
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl: java.lang.NullPointerException: Attempt to invoke interface method 'void org.chromium.chrome.browser.tabmodel.TabModelSelector.removeObserver(org.chromium.chrome.browser.tabmodel.TabModelSelectorObserver)' on a null object r
eference
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at org.chromium.chrome.browser.vr_shell.VrShellImpl.<init>(VrShellImpl.java:2978)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at org.chromium.chrome.browser.vr_shell.VrClassesWrapperImpl.createVrShell(VrClassesWrapperImpl.java:56)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at org.chromium.chrome.browser.vr_shell.VrShellDelegate.enterVR(VrShellDelegate.java:1539)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at org.chromium.chrome.browser.vr_shell.VrShellDelegate$2.run(VrShellDelegate.java:1048)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at android.os.Handler.handleCallback(Handler.java:751)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at android.os.Handler.dispatchMessage(Handler.java:95)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at android.os.Looper.loop(Looper.java:154)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at android.app.ActivityThread.main(ActivityThread.java:6121)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at java.lang.reflect.Method.invoke(Native Method)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
02-16 15:54:57.453  7531  7531 E cr_VrClassesWrapperImpl:       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

02-16 15:55:00.455  7531  7531 E AndroidRuntime: java.lang.RuntimeException: Unable to pause activity {com.chrome.canary/org.chromium.chrome.browser.ChromeTabbedActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'void org.chromium.chrome.browser.vr_shell.VrShell.pause()' on a null object reference
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:3752)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3718)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3692)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3666)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.-wrap16(ActivityThread.java)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1490)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:102)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:154)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6121)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
02-16 15:55:00.455  7531  7531 E AndroidRuntime: Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'void org.chromium.chrome.browser.vr_shell.VrShell.pause()' on a null object reference
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at org.chromium.chrome.browser.vr_shell.VrShellDelegate.shutdownVR(VrShellDelegate.java:522)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at org.chromium.chrome.browser.vr_shell.VrShellDelegate.maybePauseVR(VrShellDelegate.java:434)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at org.chromium.chrome.browser.ChromeTabbedActivity.onPauseWithNative(ChromeTabbedActivity.java:524)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at org.chromium.chrome.browser.init.AsyncInitializationActivity.onPause(AsyncInitializationActivity.java:7191)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.Activity.performPause(Activity.java:6822)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1322)
02-16 15:55:00.455  7531  7531 E AndroidRuntime:        at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:3741)

Perhaps this is related to  Issue 690625 ?
Labels: M-58
Status: Available (was: Untriaged)
Cc: shaobo....@intel.com
Status: Assigned (was: Available)
Per your offer in  issue 690625 , I'll mark this as assigned to you. Note that this one is clearly critical for M58 because it affects WebVR. Branch cut is in 10 days. Please keep us updated on the status. Thanks.
ddorwin@:
potential fix here : https://codereview.chromium.org/2707803003/
Test latest chromium release build and not crash.
Owner: mthiesse@chromium.org
Status: Started (was: Assigned)
Assigning to mthiesse, who reviewed the CL, as a proxy.
Status: Fixed (was: Started)
https://codereview.chromium.org/2727873002/ replaces the CL in #5.

vsupruniuk@, please verify.
Components: Blink>WebXR

Sign in to add a comment