mirror of
https://github.com/brl/mutter.git
synced 2025-06-13 16:59:30 +00:00
XGetWindowAttributes can return an error value, and if it does its other
2008-04-29 Chris Wang <chris.wang@sun.com> * src/core/window.c (meta_window_new): XGetWindowAttributes can return an error value, and if it does its other results are invalid! (#530485) svn path=/trunk/; revision=3698
This commit is contained in:

committed by
Thomas James Alexander Thurman

parent
eacd442787
commit
2d895ce875
@ -206,21 +206,30 @@ meta_window_new (MetaDisplay *display,
|
||||
|
||||
meta_error_trap_push_with_return (display);
|
||||
|
||||
XGetWindowAttributes (display->xdisplay,
|
||||
xwindow, &attrs);
|
||||
|
||||
if (meta_error_trap_pop_with_return (display, TRUE) != Success)
|
||||
{
|
||||
meta_verbose ("Failed to get attributes for window 0x%lx\n",
|
||||
xwindow);
|
||||
meta_error_trap_pop (display, TRUE);
|
||||
meta_display_ungrab (display);
|
||||
return NULL;
|
||||
}
|
||||
window = meta_window_new_with_attrs (display, xwindow,
|
||||
if (XGetWindowAttributes (display->xdisplay,xwindow, &attrs))
|
||||
{
|
||||
if(meta_error_trap_pop_with_return (display, TRUE) != Success)
|
||||
{
|
||||
meta_verbose ("Failed to get attributes for window 0x%lx\n",
|
||||
xwindow);
|
||||
meta_error_trap_pop (display, TRUE);
|
||||
meta_display_ungrab (display);
|
||||
return NULL;
|
||||
}
|
||||
window = meta_window_new_with_attrs (display, xwindow,
|
||||
must_be_viewable, &attrs);
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
meta_error_trap_pop_with_return (display, TRUE);
|
||||
meta_verbose ("Failed to get attributes for window 0x%lx\n",
|
||||
xwindow);
|
||||
meta_error_trap_pop (display, TRUE);
|
||||
meta_display_ungrab (display);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
meta_error_trap_pop (display, FALSE);
|
||||
meta_display_ungrab (display);
|
||||
|
||||
|
Reference in New Issue
Block a user