projects
/
silc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added SILC Thread Queue API
[silc.git]
/
lib
/
silcutil
/
silctimer.c
diff --git
a/lib/silcutil/silctimer.c
b/lib/silcutil/silctimer.c
index 903712748bae4627d3023cb9c204edfce8e2dde8..0313a3158698f8a7ea502cc688ad10311e07d6dd 100644
(file)
--- a/
lib/silcutil/silctimer.c
+++ b/
lib/silcutil/silctimer.c
@@
-25,12
+25,13
@@
void silc_timer_start(SilcTimer timer)
{
struct timeval curtime;
{
struct timeval curtime;
- memset(timer, 0, sizeof(timer));
-
silc_gettimeofday(&curtime);
timer->start_sec = curtime.tv_sec;
timer->start_usec = curtime.tv_usec;
silc_gettimeofday(&curtime);
timer->start_sec = curtime.tv_sec;
timer->start_usec = curtime.tv_usec;
-
+ timer->timer_sec = 0;
+ timer->timer_usec = 0;
+ timer->sync_diff = 0;
+ timer->sync_tdiff = 0;
timer->running = TRUE;
}
timer->running = TRUE;
}
@@
-48,6
+49,7
@@
void silc_timer_stop(SilcTimer timer)
}
timer->timer_sec = curtime.tv_sec - timer->start_sec;
timer->timer_usec = curtime.tv_usec - timer->start_usec;
}
timer->timer_sec = curtime.tv_sec - timer->start_sec;
timer->timer_usec = curtime.tv_usec - timer->start_usec;
+ timer->timer_usec -= timer->sync_diff;
timer->running = FALSE;
}
timer->running = FALSE;
}
@@
-90,6
+92,7
@@
void silc_timer_value(SilcTimer timer,
}
timer->timer_sec = curtime.tv_sec - timer->start_sec;
timer->timer_usec = curtime.tv_usec - timer->start_usec;
}
timer->timer_sec = curtime.tv_sec - timer->start_sec;
timer->timer_usec = curtime.tv_usec - timer->start_usec;
+ timer->timer_usec -= timer->sync_diff;
}
if (elapsed_time_seconds)
}
if (elapsed_time_seconds)