New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 798741 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug
Proj-VR
Proj-XR
Proj-XR-VR



Sign in to add a comment

Chrome VR crashing when scrolling via controller touch pad

Project Member Reported by cjgrant@chromium.org, Jan 3 2018

Issue description

ToT as of January 2.

What steps will reproduce the problem?
(1) Enter Chrome VR on any web page
(2) Attempt to scroll

Crash:

signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
[FATAL:render_widget_host_impl.cc(1211)] Check failed: !is_in_gesture_scroll_[gesture_event.source_device].


 
Relevant snippet of decoded stack trace:


/usr/local/google/work/chromium/src/content/browser/renderer_host/render_widget_host_impl.cc:1211:9
  00a299c1  content::RenderWidgetHostImpl::ForwardGestureEvent(blink::WebGestureEvent const&)                                                                                                                                                                                   
                                             /usr/local/google/work/chromium/src/content/browser/renderer_host/render_widget_host_impl.cc:1157:3
  00c0c7b9  vr_shell::VrShell::ProcessContentGesture(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int)                                                                                                                    
                                             /usr/local/google/work/chromium/src/chrome/browser/android/vr_shell/vr_shell.cc:894:36
  00c0891f  void base::internal::FunctorTraits<void (vr_shell::VrShell::*)(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int), void>::Invoke<base::WeakPtr<vr_shell::VrShell> const&, std::__ndk1::unique_ptr<blink::WebInp
utEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int const&>(void (vr_shell::VrShell::*)(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int), base::WeakPtr<vr_shell::VrShell> const&, std::__ndk1::unique_ptr<
blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >&&, int const&)                                                                                                                                                                                        
                                             /usr/local/google/work/chromium/src/base/bind_internal.h:211:12
  00c088ed  void base::internal::InvokeHelper<true, void>::MakeItSo<void (vr_shell::VrShell::* const&)(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int), base::WeakPtr<vr_shell::VrShell> const&, std::__ndk1::unique_ptr
<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int const&>(void (vr_shell::VrShell::* const&)(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int), base::WeakPtr<vr_shell::VrShell> const&, std
::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >&&, int const&)                                                                                                                                                                   
                                             /usr/local/google/work/chromium/src/base/bind_internal.h:314:5
  00c088bf  void base::internal::Invoker<base::internal::BindState<void (vr_shell::VrShell::*)(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int), base::WeakPtr<vr_shell::VrShell>, base::internal::PassedWrapper<std::__n
dk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> > >, int>, void ()>::RunImpl<void (vr_shell::VrShell::* const&)(std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> >, int), std::__ndk1::tu
ple<base::WeakPtr<vr_shell::VrShell>, base::internal::PassedWrapper<std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> > >, int> const&, 0u, 1u, 2u>(void (vr_shell::VrShell::* const&)(std::__ndk1::unique_ptr<blink::WebInputEven
t, std::__ndk1::default_delete<blink::WebInputEvent> >, int), std::__ndk1::tuple<base::WeakPtr<vr_shell::VrShell>, base::internal::PassedWrapper<std::__ndk1::unique_ptr<blink::WebInputEvent, std::__ndk1::default_delete<blink::WebInputEvent> > >, int> const&, std::__ndk1::
integer_sequence<unsigned int, 0u, 1u, 2u>)  /usr/local/google/work/chromium/src/base/bind_internal.h:368:12
  0008ec59  base::OnceCallback<void ()>::Run() &&                                                                                                                                                                                                                               
                                                                                                                                                                                                                                                                                
/usr/local/google/work/chromium/src/base/callback.h:65:12
  00097f99  base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*)                                                                                                                                                                                                
                                            /usr/local/google/work/chromium/src/base/debug/task_annotator.cc:55:33
  000add1d  base::internal::IncomingTaskQueue::RunTask(base::PendingTask*)                                                                                                                                                                                                      
                                             /usr/local/google/work/chromium/src/base/message_loop/incoming_task_queue.cc:128:19
  000afa73  base::MessageLoop::RunTask(base::PendingTask*)                                                                              
Cc: sahel@chromium.org
+cc Sahel who was just touching related code and may know what's going on.

Comment 3 by sahel@chromium.org, Jan 8 2018

Cc: -sahel@chromium.org
Owner: sahel@chromium.org
Status: Assigned (was: Available)
Yes, this is related to my change, I will look into it.
Project Member

Comment 4 by bugdroid1@chromium.org, Jan 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f11f9437c10af943f3770cd7bba3c0eb2b4b15c2

commit f11f9437c10af943f3770cd7bba3c0eb2b4b15c2
Author: Sahel Sharify <sahel@chromium.org>
Date: Wed Jan 10 16:00:45 2018

Fixed VR scrolling regression when wheel scroll latching is disabled.

This cl is a follow up for the following change:
https://chromium-review.googlesource.com/c/chromium/src/+/842707

It updates the expected scroll event sequence for VR touchpad scrolling
when wheel scroll latching is disabled, I missed this case in the
original cl.

Bug:  798741 , 797322
Change-Id: Ieac7fdc2dc96287848bab985894337f40275b2b5
Reviewed-on: https://chromium-review.googlesource.com/857355
Reviewed-by: Timothy Dresser <tdresser@chromium.org>
Commit-Queue: Sahel Sharifymoghaddam <sahel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#528328}
[modify] https://crrev.com/f11f9437c10af943f3770cd7bba3c0eb2b4b15c2/content/browser/renderer_host/render_widget_host_impl.cc

Comment 5 by sahel@chromium.org, Jan 10 2018

Status: Fixed (was: Assigned)
Labels: Test-Complete

Sign in to add a comment