Skip to content

Commit

Permalink
wayland: Fix segfault when trying to set cursor without input
Browse files Browse the repository at this point in the history
[17567:17567:0528/100616:ERROR:display.cc(227)] Not implemented reached in virtual void ozonewayland::WaylandDisplay::SetWidgetState(unsigned int, ui::WidgetState, unsigned int, unsigned int) SHOW 1
[17567:17606:0528/100616:WARNING:server_connection_manager.cc(296)] ServerConnectionManager forcing SYNC_AUTH_ERROR
[17567:17606:0528/100616:WARNING:syncer_proto_util.cc(277)] Error posting from syncer: Response Code (bogus on error): -1 Content-Length (bogus on error): -1 Server Status: SYNC_AUTH_ERROR
[17567:17606:0528/100616:ERROR:get_updates_processor.cc(240)] PostClientToServerMessage() failed during GetUpdates
[17567:17584:0528/100617:WARNING:backend_impl.cc(1780)] Destroying invalid entry.
[17567:17567:0528/100616:FATAL:input_device.cc(216)] Check failed: input_pointer_.
 #0 0x7f9f01fd0a99 base::debug::StackTrace::StackTrace()
 intel#1 0x7f9f02022a33 logging::LogMessage::~LogMessage()
 intel#2 0x7f9f03337610 ozonewayland::WaylandInputDevice::SetCursorType()
 intel#3 0x7f9f0332f9c8 ozonewayland::WaylandDisplay::SetWidgetCursor()
 intel#4 0x7f9f06f07869 views::DesktopWindowTreeHostWayland::SetCursorNative()
 intel#5 0x7f9f033238ad aura::WindowTreeHost::SetCursor()
 intel#6 0x7f9f06f1da8d views::DesktopNativeCursorManager::SetCursor()
 intel#7 0x7f9f06dcdf5c wm::CursorManager::SetCursor()
 intel#8 0x7f9f06dc94d8 wm::CompoundEventFilter::UpdateCursor()
 intel#9 0x7f9f06dc99bf wm::CompoundEventFilter::OnMouseEvent()
 intel#10 0x7f9f086c0093 ui::EventHandler::OnEvent()
 intel#11 0x7f9f086bdcf1 ui::EventDispatcher::DispatchEvent()
 intel#12 0x7f9f086bdab7 ui::EventDispatcher::DispatchEventToEventHandlers()
 intel#13 0x7f9f086bd79d ui::EventDispatcher::ProcessEvent()
 intel#14 0x7f9f086bd476 ui::EventDispatcherDelegate::DispatchEventToTarget()
 intel#15 0x7f9f086bd33d ui::EventDispatcherDelegate::DispatchEvent()
 intel#16 0x7f9f0331bcbf aura::WindowEventDispatcher::DispatchMouseEnterOrExit()
 intel#17 0x7f9f0331dde1 aura::WindowEventDispatcher::PreDispatchMouseEvent()
 intel#18 0x7f9f0331c5c1 aura::WindowEventDispatcher::PreDispatchEvent()
 intel#19 0x7f9f086bd2dd ui::EventDispatcherDelegate::DispatchEvent()
 intel#20 0x7f9f086c15e7 ui::EventProcessor::OnEventFromSource()
 intel#21 0x7f9f0331d845 aura::WindowEventDispatcher::SynthesizeMouseMoveEvent()
 intel#22 0x7f9f0331fe00 base::internal::RunnableAdapter<>::Run()
 intel#23 0x7f9f0331fc87 base::internal::InvokeHelper<>::MakeItSo()
 intel#24 0x7f9f0331fab8 base::internal::Invoker<>::Run()
 intel#25 0x7f9f00e1beb9 base::Callback<>::Run()
 intel#26 0x7f9f02033288 base::MessageLoop::RunTask()
 intel#27 0x7f9f020333ac base::MessageLoop::DeferOrRunPendingTask()
 intel#28 0x7f9f020338d3 base::MessageLoop::DoWork()
 intel#29 0x7f9f01fb45ef base::MessagePumpLibevent::Run()
 intel#30 0x7f9f02032dd7 base::MessageLoop::RunHandler()
 intel#31 0x7f9f0207300a base::RunLoop::Run()
 intel#32 0x7f9f01678366 ChromeBrowserMainParts::MainMessageLoopRun()
 intel#33 0x7f9f05851634 content::BrowserMainLoop::RunMainMessageLoopParts()
 intel#34 0x7f9f058589dc content::BrowserMainRunnerImpl::Run()
 intel#35 0x7f9f0584dba8 content::BrowserMain()
 intel#36 0x7f9f01f73f75 content::RunNamedProcessTypeMain()
 intel#37 0x7f9f01f74fa1 content::ContentMainRunnerImpl::Run()
 intel#38 0x7f9f01f73439 content::ContentMain()
 intel#39 0x7f9f00d75344 ChromeMain
 intel#40 0x7f9f00d752ea main
 intel#41 0x7f9efcbc876d __libc_start_main
 intel#42 0x7f9f00d751f9 <unknown>
  • Loading branch information
tiagovignatti committed May 28, 2014
1 parent 6aacc52 commit 374e95a
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion wayland/input_device.cc
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,10 @@ void WaylandInputDevice::SetGrabWindowHandle(unsigned windowhandle,
}

void WaylandInputDevice::SetCursorType(int cursor_type) {
DCHECK(input_pointer_);
if (!input_pointer_) {
LOG(WARNING) << "Tried to change cursor without input configured";
return;
}
input_pointer_->Cursor()->Update(CursorShapeFromNative(cursor_type),
WaylandDisplay::GetInstance()->GetSerial());
}
Expand Down

0 comments on commit 374e95a

Please sign in to comment.