From 03e123528df6316e574a503237e1b9a9c1628da1 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期四, 14 一月 2021 14:32:18 +0800
Subject: [PATCH] update build.sh

---
 src/px_sem_util.cpp |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/px_sem_util.cpp b/src/px_sem_util.cpp
index 80008fb..9de9c38 100644
--- a/src/px_sem_util.cpp
+++ b/src/px_sem_util.cpp
@@ -1,13 +1,16 @@
 #include "px_sem_util.h"
 
+#define NANO 1000000000
 struct timespec PXSemUtil::calc_sem_timeout(const struct timespec *ts) {
-	int tmp_sec;
+ 
+	struct timespec res;
   struct timespec timeout;
   if (clock_gettime(CLOCK_REALTIME, &timeout) == -1)
       err_exit(errno, "clock_gettime");
-  timeout.tv_nsec += ts->tv_nsec;
-  tmp_sec =  timeout.tv_nsec / 10e9;
-  timeout.tv_nsec =  timeout.tv_nsec - tmp_sec * 10e9;
-  timeout.tv_sec += ts->tv_sec + tmp_sec;
-  return timeout;
+
+  res.tv_sec = timeout.tv_sec + ts->tv_sec;
+  res.tv_nsec = timeout.tv_nsec + ts->tv_nsec;
+  res.tv_sec = res.tv_sec + floor(res.tv_nsec / NANO);
+  res.tv_nsec = res.tv_nsec % NANO;
+  return res;
 }
\ No newline at end of file

--
Gitblit v1.8.0