diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2021-02-05 11:00:45 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2021-02-05 11:01:21 +0000 |
commit | e3d71d9bdfa31fb658794759f07af43d53253e5f (patch) | |
tree | 5afb52ea54d915dacb318793326a3ed741a367b2 /compat | |
parent | 3dd2e850759ef9e18e62b69300eba999a90d747e (diff) | |
download | rtmux-e3d71d9bdfa31fb658794759f07af43d53253e5f.tar.gz rtmux-e3d71d9bdfa31fb658794759f07af43d53253e5f.tar.bz2 rtmux-e3d71d9bdfa31fb658794759f07af43d53253e5f.zip |
Add compat clock_gettime for older macOS. GitHub issue 2555.
Diffstat (limited to 'compat')
-rw-r--r-- | compat/clock_gettime.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/compat/clock_gettime.c b/compat/clock_gettime.c new file mode 100644 index 00000000..8290e75c --- /dev/null +++ b/compat/clock_gettime.c @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2021 Nicholas Marriott <nicholas.marriott@gmail.com> + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER + * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING + * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include <sys/types.h> +#include <sys/time.h> + +#include "compat.h" + +#ifndef TIMEVAL_TO_TIMESPEC +#define TIMEVAL_TO_TIMESPEC(tv, ts) do { \ + (ts)->tv_sec = (tv)->tv_sec; \ + (ts)->tv_nsec = (tv)->tv_usec * 1000; \ +} while (0) +#endif + +int +clock_gettime(int clock, struct timespec *ts) +{ + struct timeval tv; + + gettimeofday(&tv, NULL); + TIMEVAL_TO_TIMESPEC(&tv, ts); + return 0; +} |