diff --git a/ChangeLog b/ChangeLog index 814ee19..68d6e27 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-11-23 Ross Burton + + * src/util.c: Check the xterm window ID is valid for the current + display before trying to use it. + 2004-10-30 Francisco Javier F. Serrador * src/main.c: Typo fixing: Notication options --> Notification options diff --git a/src/util.c b/src/util.c index 6e9de2a..ff7d18b 100644 --- a/src/util.c +++ b/src/util.c @@ -272,8 +272,16 @@ transient_get_xterm (void) if (wid_str) { char *wid_str_end; Window wid = strtoul (wid_str, &wid_str_end, 10); - if (*wid_str != '\0' && *wid_str_end == '\0' && wid != 0) + if (*wid_str != '\0' && *wid_str_end == '\0' && wid != 0) { + XWindowAttributes attrs; + gdk_error_trap_push (); + XGetWindowAttributes (GDK_DISPLAY(), wid, &attrs); + gdk_flush(); + if (gdk_error_trap_pop () != 0) { + return None; + } return wid; + } } return None; }