Changeset 208285 in webkit
- Timestamp:
- Nov 2, 2016 9:35:08 AM (8 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r208278 r208285 1 2016-11-02 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK] BadDamage X Window System error in WebKit::AcceleratedBackingStoreX11::update when called from WebPageProxy::exitAcceleratedCompositingMode 4 https://bugs.webkit.org/show_bug.cgi?id=164303 5 6 Reviewed by Michael Catanzaro. 7 8 This can happen if the web process exits before the UI process has cleaned up the accelerated surface. Trap 9 BadDrawable and BadDamage X errors and ignore them, while still crashing for any other X error. 10 11 * UIProcess/gtk/AcceleratedBackingStoreX11.cpp: 12 (WebKit::AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11): 13 (WebKit::AcceleratedBackingStoreX11::update): 14 1 15 2016-11-02 Carlos Garcia Campos <cgarcia@igalia.com> 2 16 -
trunk/Source/WebKit2/UIProcess/gtk/AcceleratedBackingStoreX11.cpp
r206998 r208285 34 34 #include <WebCore/CairoUtilities.h> 35 35 #include <WebCore/PlatformDisplayX11.h> 36 #include <WebCore/XErrorTrapper.h> 36 37 #include <X11/Xlib.h> 37 38 #include <X11/extensions/Xdamage.h> … … 117 118 AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11() 118 119 { 120 if (!m_surface && !m_damage) 121 return; 122 123 Display* display = downcast<PlatformDisplayX11>(PlatformDisplay::sharedDisplay()).native(); 124 XErrorTrapper trapper(display, XErrorTrapper::Policy::Crash, { BadDrawable, BadDamage }); 119 125 if (m_damage) { 120 126 XDamageNotifier::singleton().remove(m_damage.get()); 121 127 m_damage.reset(); 122 XSync(d owncast<PlatformDisplayX11>(PlatformDisplay::sharedDisplay()).native(), False);128 XSync(display, False); 123 129 } 124 130 } … … 133 139 134 140 if (m_surface) { 141 XErrorTrapper trapper(display, XErrorTrapper::Policy::Crash, { BadDrawable, BadDamage }); 135 142 if (m_damage) { 136 143 XDamageNotifier::singleton().remove(m_damage.get());
Note: See TracChangeset
for help on using the changeset viewer.