From cb148dd11eea0c65435a542323cee14b6046d0dc Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Wed, 16 Nov 2011 10:08:28 +0000 Subject: [PATCH] dont go hunt if ping to now interval not long enough in poller SVN revision: 65290 --- src/bin/e_border.c | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/bin/e_border.c b/src/bin/e_border.c index e0112048a..0cfd21c08 100644 --- a/src/bin/e_border.c +++ b/src/bin/e_border.c @@ -8813,16 +8813,23 @@ _e_border_cb_ping_poller(void *data) } else { - if (!bd->hung) + /* if time between last ping and now is greater + * than half the ping interval... */ + if ((ecore_loop_time_get() - bd->ping) > + ((e_config->ping_clients_interval * + ecore_poller_poll_interval_get(ECORE_POLLER_CORE)) / 2.0)) { - bd->hung = 1; - edje_object_signal_emit(bd->bg_object, "e,state,hung", "e"); - /* FIXME: if below dialog is up - hide it now */ - } - if (bd->delete_requested) - { - /* FIXME: pop up dialog saying app is hung - kill client, or pid */ - e_border_act_kill_begin(bd); + if (!bd->hung) + { + bd->hung = 1; + edje_object_signal_emit(bd->bg_object, "e,state,hung", "e"); + /* FIXME: if below dialog is up - hide it now */ + } + if (bd->delete_requested) + { + /* FIXME: pop up dialog saying app is hung - kill client, or pid */ + e_border_act_kill_begin(bd); + } } } bd->ping_poller = NULL;