Fix timespec_add overflow

This commit is contained in:
Tasos Sahanidis
2021-03-07 19:25:18 +02:00
parent e8c60e7ab1
commit 68f3122258
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -59,7 +59,7 @@ typedef unsigned int uint;
#define ckb_info(fmt, args...) fprintf(ckb_s_out, "[I] " fmt "\n", ## args)
// Timespec utilities
void timespec_add(struct timespec* timespec, long nanoseconds);
void timespec_add(struct timespec* timespec, int64_t nanoseconds);
#define timespec_gt(left, right) ((left).tv_sec > (right).tv_sec || ((left).tv_sec == (right).tv_sec && (left).tv_nsec > (right).tv_nsec))
#define timespec_eq(left, right) ((left).tv_sec == (right).tv_sec && (left).tv_nsec == (right).tv_nsec)
#define timespec_ge(left, right) ((left).tv_sec > (right).tv_sec || ((left).tv_sec == (right).tv_sec && (left).tv_nsec >= (right).tv_nsec))
+1 -1
View File
@@ -18,7 +18,7 @@ extern int hwload_mode;
int sighandler_pipe[2] = { 0, 0 };
// Timespec utility function
void timespec_add(struct timespec* timespec, long nanoseconds){
void timespec_add(struct timespec* timespec, int64_t nanoseconds){
nanoseconds += timespec->tv_nsec;
timespec->tv_sec += nanoseconds / 1000000000;
timespec->tv_nsec = nanoseconds % 1000000000;