summaryrefslogtreecommitdiffstats
path: root/reference-ril/atchannel.c
diff options
context:
space:
mode:
authorJinhui Li <jinhui.li@intel.com>2016-03-30 05:53:31 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-03-30 05:53:31 +0000
commit0ae0fbbd5cc8fc56a2eb1fa273a73251b1735fd0 (patch)
treec8fd047f87d5ef98bead086c995acbdff74eeb4a /reference-ril/atchannel.c
parentfb4ed9165428379823f1d1b423af49b3e71cce34 (diff)
parent230df4ab9c69358026634079c1dece849b10d2f0 (diff)
downloadandroid_hardware_ril-0ae0fbbd5cc8fc56a2eb1fa273a73251b1735fd0.tar.gz
android_hardware_ril-0ae0fbbd5cc8fc56a2eb1fa273a73251b1735fd0.tar.bz2
android_hardware_ril-0ae0fbbd5cc8fc56a2eb1fa273a73251b1735fd0.zip
Merge "reference-ril/atchannel.c: Fix time conversion" am: 0bbaed7
am: 230df4a * commit '230df4ab9c69358026634079c1dece849b10d2f0': reference-ril/atchannel.c: Fix time conversion Change-Id: I02f358e240858166c4360b368b23c0dfdee67ff1
Diffstat (limited to 'reference-ril/atchannel.c')
-rw-r--r--reference-ril/atchannel.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/reference-ril/atchannel.c b/reference-ril/atchannel.c
index f38545d..ac01cbc 100644
--- a/reference-ril/atchannel.c
+++ b/reference-ril/atchannel.c
@@ -86,6 +86,7 @@ static int writeCtrlZ (const char *s);
static int writeline (const char *s);
#ifndef USE_NP
+#define NS_PER_S 1000000000
static void setTimespecRelative(struct timespec *p_ts, long long msec)
{
struct timeval tv;
@@ -97,6 +98,11 @@ static void setTimespecRelative(struct timespec *p_ts, long long msec)
a relative time again */
p_ts->tv_sec = tv.tv_sec + (msec / 1000);
p_ts->tv_nsec = (tv.tv_usec + (msec % 1000) * 1000L ) * 1000L;
+ /* assuming tv.tv_usec < 10^6 */
+ if (p_ts->tv_nsec >= NS_PER_S) {
+ p_ts->tv_sec++;
+ p_ts->tv_nsec -= NS_PER_S;
+ }
}
#endif /*USE_NP*/