diff --git a/ChangeLog b/ChangeLog index 2da1d8da0..6ff2ef990 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-12-24 Elijah Newren + + * src/window.c (window_takes_focus_on_map): Fix error in + distinguishing < vs. <= introduced by the patch in #154598, + restructure code so that verbose log matches code better in order + ensure such mistakes are harder to make in the future (fixes + #162172) + 2004-12-24 Elijah Newren Thanks to mild7@users.sourceforge.net for this fix. diff --git a/src/window.c b/src/window.c index ccc2a5539..3b6a089d9 100644 --- a/src/window.c +++ b/src/window.c @@ -1624,21 +1624,21 @@ window_takes_focus_on_map (MetaWindow *window) compare = window->initial_timestamp_set ? window->initial_timestamp : 0; compare = window->net_wm_user_time_set ? window->net_wm_user_time : compare; - if ((window->display->focus_window == NULL) || - XSERVER_TIME_IS_BEFORE (window->display->focus_window->net_wm_user_time, compare)) - { - meta_topic (META_DEBUG_STARTUP, - "new window %s with no intervening events\n", - window->desc); - return TRUE; - } - else + if ((window->display->focus_window != NULL) && + XSERVER_TIME_IS_BEFORE (compare, window->display->focus_window->net_wm_user_time)) { meta_topic (META_DEBUG_STARTUP, "window %s focus prevented by other activity; %lu is before %lu\n", window->desc, compare, window->display->focus_window->net_wm_user_time); return FALSE; } + else + { + meta_topic (META_DEBUG_STARTUP, + "new window %s with no intervening events\n", + window->desc); + return TRUE; + } break; }