From 76819d315d68529af0e040cfdfd26563b563ea1c Mon Sep 17 00:00:00 2001 From: "sergeyu@chromium.org" Date: Wed, 1 Oct 2014 23:07:12 +0000 Subject: [PATCH] Add error trap for XFixesGetCursorImage() BUG=https://code.google.com/p/webrtc/issues/detail?id=3245 R=jiayl@webrtc.org Review URL: https://webrtc-codereview.appspot.com/31519004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7362 4adac7df-926f-26a2-2b94-8c16560cd09d --- .../desktop_capture/mouse_cursor_monitor_x11.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/webrtc/modules/desktop_capture/mouse_cursor_monitor_x11.cc b/webrtc/modules/desktop_capture/mouse_cursor_monitor_x11.cc index f09593db9d..f5c454e6cf 100644 --- a/webrtc/modules/desktop_capture/mouse_cursor_monitor_x11.cc +++ b/webrtc/modules/desktop_capture/mouse_cursor_monitor_x11.cc @@ -182,9 +182,13 @@ bool MouseCursorMonitorX11::HandleXEvent(const XEvent& event) { void MouseCursorMonitorX11::CaptureCursor() { assert(have_xfixes_); - XFixesCursorImage* img = XFixesGetCursorImage(display()); - if (!img) - return; + XFixesCursorImage* img; + { + XErrorTrap error_trap(display()); + img = XFixesGetCursorImage(display()); + if (!img || error_trap.GetLastErrorAndDisable() != 0) + return; + } scoped_ptr image( new BasicDesktopFrame(DesktopSize(img->width, img->height)));