kuri pushed a commit to branch ecore-1.7.
commit d3d82c6f490e5ba1b4c9a7c72c9ff42c3a7e70f6
Author: Guillaume Friloux <[email protected]>
Date: Fri May 24 11:51:09 2013 +0200
Fixes another bug found by Cravix (IRC) where even if data is going over
the socket, we still timeout the connection if
ecore_con_client_timeout_set and ecore_con_server_timeout_set are used!
This is even a worst bug than the previous one.
This patch should also be applied and tested on 1.8.
Thx Cravix!
---
src/lib/ecore_con/ecore_con.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/lib/ecore_con/ecore_con.c b/src/lib/ecore_con/ecore_con.c
index de9f72a..eefcbc4 100644
--- a/src/lib/ecore_con/ecore_con.c
+++ b/src/lib/ecore_con/ecore_con.c
@@ -1384,7 +1384,10 @@ _ecore_con_server_timer_update(Ecore_Con_Server *svr)
if (svr->disconnect_time > 0)
{
if (svr->until_deletion)
- ecore_timer_interval_set(svr->until_deletion,
svr->disconnect_time);
+ {
+ ecore_timer_interval_set(svr->until_deletion,
svr->disconnect_time);
+ ecore_timer_reset(svr->until_deletion);
+ }
else
svr->until_deletion = ecore_timer_add(svr->disconnect_time,
(Ecore_Task_Cb)_ecore_con_server_timer, svr);
}
@@ -1421,7 +1424,10 @@ _ecore_con_cl_timer_update(Ecore_Con_Client *cl)
if (cl->disconnect_time > 0)
{
if (cl->until_deletion)
- ecore_timer_interval_set(cl->until_deletion,
cl->disconnect_time);
+ {
+ ecore_timer_interval_set(cl->until_deletion,
cl->disconnect_time);
+ ecore_timer_reset(cl->until_deletion);
+ }
else
cl->until_deletion = ecore_timer_add(cl->disconnect_time,
(Ecore_Task_Cb)_ecore_con_client_timer, cl);
}
--
------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may