-Index: broadcom-wl-4.150.10.5.2/router/shared/linux_timer.c
-===================================================================
---- broadcom-wl-4.150.10.5.2.orig/router/shared/linux_timer.c 2008-04-07 00:15:24.914329846 +0200
-+++ broadcom-wl-4.150.10.5.2/router/shared/linux_timer.c 2008-04-07 00:14:52.288470602 +0200
-@@ -94,6 +94,7 @@
+--- a/router/shared/linux_timer.c
++++ b/router/shared/linux_timer.c
+@@ -94,6 +94,7 @@ typedef long uclock_t;
#define TFLAG_NONE 0
#define TFLAG_CANCELLED (1<<0)
#define TFLAG_DELETED (1<<1)
struct event {
struct timeval it_interval;
-@@ -207,6 +208,7 @@
+@@ -207,6 +208,7 @@ int timer_create(
event_freelist = event->next;
event->next = NULL;
check_event_queue();
-@@ -387,6 +389,7 @@
+@@ -387,6 +389,7 @@ int timer_settime
}
event->flags &= ~TFLAG_CANCELLED;
unblock_timer();
-@@ -502,7 +505,15 @@
+@@ -502,7 +505,15 @@ static void alarm_handler(int i)
(*(event->func))((timer_t) event, (int)event->arg);
/* If the event has been cancelled, do NOT put it back on the queue. */
/* if the event is a recurring event, reset the timer and
* find its correct place in the sorted list of events.
-@@ -545,6 +556,7 @@
+@@ -545,6 +556,7 @@ static void alarm_handler(int i)
/* link our new event into the pending event queue. */
event->next = *ppevent;
*ppevent = event;