From 7e23cd0f57456e78432ee21381767cf07b5d85c4 Mon Sep 17 00:00:00 2001 From: ptt Date: Tue, 14 May 2002 17:13:45 +0000 Subject: fix idle a bit git-svn-id: http://opensvn.csie.org/pttbbs/pttbbs/trunk/pttbbs@171 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/io.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'mbbsd/io.c') diff --git a/mbbsd/io.c b/mbbsd/io.c index 37dc2be1..8e7cd7ae 100644 --- a/mbbsd/io.c +++ b/mbbsd/io.c @@ -1,4 +1,4 @@ -/* $Id: io.c,v 1.14 2002/05/14 15:20:42 ptt Exp $ */ +/* $Id: io.c,v 1.15 2002/05/14 17:13:45 ptt Exp $ */ #include #include #include @@ -126,7 +126,7 @@ int watermode = -1, wmofo = -1; static int dogetch() { int len; - static time_t anti_robot=0; + static time_t lastact, realact=0; if(ibufsize <= icurrchar) { if(flushf) @@ -175,16 +175,14 @@ static int dogetch() { if(currutmp) { now= time(0); - if(now-currutmp->lastact<3) - anti_robot=now; - else if(!anti_robot || now-anti_robot < 5*60) - { - currutmp->lastact = now; - } + if(!realact || now-lastact < 3) + realact=now; + + if(now-realact<5*60) + currutmp->lastact=now; else - { - currutmp->lastact = anti_robot; - } + currutmp->lastact=realact; + lastact=now; } return inbuf[icurrchar++]; } -- cgit v1.2.3