- Spelling checked
[sip-router] / timer.c
diff --git a/timer.c b/timer.c
index 9512fd9..8f7e3f3 100644 (file)
--- a/timer.c
+++ b/timer.c
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * Copyright (C) 2001-2003 Fhg Fokus
+ * Copyright (C) 2001-2003 FhG Fokus
  *
  * This file is part of ser, a free SIP server.
  *
@@ -27,6 +27,7 @@
 /* History:
  * --------
  *  2003-03-19  replaced all the mallocs/frees w/ pkg_malloc/pkg_free (andrei)
+ *  2003-03-29  cleaning pkg_mallocs introduced (jiri)
  */
 
 
@@ -72,6 +73,8 @@ int init_timer()
 
 void destroy_timer()
 {
+       struct sr_timer* t, *foo;
+
        if (jiffies){
 #ifdef SHM_MEM
                shm_free(jiffies); jiffies=0;
@@ -79,12 +82,21 @@ void destroy_timer()
                pkg_free(jiffies); jiffies=0;
 #endif
        }
+
+       t=timer_list;
+       while(t) {
+               foo=t->next;
+               pkg_free(t);
+               t=foo;
+       }
 }
 
 
 
 /*register a periodic timer;
- * ret: <0 on error*/
+ * ret: <0 on error
+ * Hint: if you need it in a module, register it from mod_init or it 
+ * won't work otherwise*/
 int register_timer(timer_function f, void* param, unsigned int interval)
 {
        struct sr_timer* t;
@@ -141,7 +153,7 @@ void timer_ticker()
 unsigned int get_ticks()
 {
        if (jiffies==0){
-               LOG(L_CRIT, "BUG: get_ticks: jiffies not intialized\n");
+               LOG(L_CRIT, "BUG: get_ticks: jiffies not initialized\n");
                return 0;
        }
 #ifndef SHM_MEM