summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlavioJS <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-07-16 10:34:16 +0000
committerFlavioJS <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-07-16 10:34:16 +0000
commit43cc789c05999bed1e50126867887212bc1fc346 (patch)
tree7d469d17fed704054425c38f298cf39fe8fbb6d8
parent9c2f6c141486530c03ceb01261bd975a95a7f9b8 (diff)
downloadhercules-43cc789c05999bed1e50126867887212bc1fc346.tar.gz
hercules-43cc789c05999bed1e50126867887212bc1fc346.tar.bz2
hercules-43cc789c05999bed1e50126867887212bc1fc346.tar.xz
hercules-43cc789c05999bed1e50126867887212bc1fc346.zip
* Added a check to make sure only released timers are acquired from the free list.
* Changed TIMER_MAX_INTERVAL to 1 second (was set to 1 minute by mistake). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12963 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/common/timer.c6
2 files changed, 5 insertions, 3 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 3e0ba52eb..0b71ac0f3 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2008/07/16
+ * Added a check to make sure only released timers are acquired from the free list.
+ * Changed TIMER_MAX_INTERVAL to 1 second (was set to 1 minute by mistake). [FlavioJS]
* Fixed TK_JUMPKICK, should not jump over objects and cliffs.
- This also might fix them being able to jump barricades on WoESE. [Brainstorm]
diff --git a/src/common/timer.c b/src/common/timer.c
index df227cb57..882ddd705 100644
--- a/src/common/timer.c
+++ b/src/common/timer.c
@@ -22,7 +22,7 @@
// If the server can't handle processing thousands of monsters
// or many connected clients, please increase TIMER_MIN_INTERVAL.
#define TIMER_MIN_INTERVAL 50
-#define TIMER_MAX_INTERVAL 60000
+#define TIMER_MAX_INTERVAL 1000
// timers (array)
static struct TimerData* timer_data = NULL;
@@ -324,8 +324,8 @@ static int acquire_timer(void)
while( free_timer_list_num )
{
int pos = --free_timer_list_num;
- if( free_timer_list[pos] < timer_data_num )
- {
+ if( free_timer_list[pos] < timer_data_num && timer_data[free_timer_list[pos]].type == 0 )
+ {// freed and released
tid = free_timer_list[pos];
break;
}