New issue
Advanced search Search tips

Issue 723262 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: May 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Proj-XR



Sign in to add a comment

VrShellGl::PostToGlThreadWhenReady doesn't do what it intended to do

Reported by artyo...@gmail.com, May 17 2017

Issue description

Steps to reproduce the problem:
PostToGlThreadWhenReady supposed to post a task to VrShellGl making sure the VR thread is started. For example:

PostToGlThreadWhenReady(base::Bind(&VrShellGl::SetWebVrMode,
                                     gl_thread_->GetVrShellGl(), enabled));

What is the expected behavior?

What went wrong?
However, it assumes that gl_thread_->GetVrShellGl() is already not NULL, which is not true until the thread is started and its Init() method is called! Since it records the state of gl_thread_->GetVrShellGl() before waiting the thread start, the whole PostToGlThreadWhenReady is pretty much pointless.

Did this work before? No 

Does this work in other browsers? N/A

Chrome version: M60 master  Channel: dev
OS Version: 
Flash Version: 

The naive way to fix the issue is to use macro instead of the actual method.

There is second issue as well: VrShell::OnResume doesn't use PostToGlThreadWhenReady and uses a regular PostTask call for VrShellGl::OnResume posting. OnResume maybe called before the VR thread is started, thus VrShellGl::OnResume maybe missed. Need to use PostToGlThreadWhenReady (assuming the first issue is fixed and it works correctly).
 
Labels: Proj-VR
Owner: mthiesse@chromium.org
Status: Assigned (was: Unconfirmed)
mthiesse, please review.
Project Member

Comment 2 by bugdroid1@chromium.org, May 17 2017

Status: Fixed (was: Assigned)
Components: Blink>WebXR

Sign in to add a comment