<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch check-ret-value-from-mach_timebase_info
in repository macports-legacy-support.
</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/2e52e7e84fd0a08a6e08ef51c0844e3297cab96a">https://github.com/macports/macports-legacy-support/commit/2e52e7e84fd0a08a6e08ef51c0844e3297cab96a</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 2e52e7e84fd0a08a6e08ef51c0844e3297cab96a
</span>Author: Chris Jones <cjones051073@icloud.com>
AuthorDate: Wed Apr 26 09:54:10 2023 +0100
<span style='display:block; white-space:pre;color:#404040;'> Check return value from mach_timebase_info call
</span>---
src/time.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/time.c b/src/time.c
</span><span style='display:block; white-space:pre;color:#808080;'>index 6c24e20..cfce31c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/time.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/time.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,7 +31,7 @@ int clock_gettime( clockid_t clk_id, struct timespec *ts )
</span> int ret = -1;
if ( ts )
{
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if ( CLOCK_REALTIME == clk_id )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ( CLOCK_REALTIME == clk_id )
</span> {
struct timeval tv;
ret = gettimeofday(&tv, NULL);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -42,8 +42,9 @@ int clock_gettime( clockid_t clk_id, struct timespec *ts )
</span> {
const uint64_t t = mach_absolute_time();
static mach_timebase_info_data_t timebase;
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if (timebase.numer == 0 || timebase.denom == 0) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- mach_timebase_info(&timebase);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ( 0 == timebase.numer || 0 == timebase.denom ) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const kern_return_t kr = mach_timebase_info(&timebase);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ( kr != KERN_SUCCESS ) { return kr; }
</span> }
uint64_t tdiff = t * timebase.numer / timebase.denom;
if ( CLOCK_MONOTONIC == clk_id ) {
</pre><pre style='margin:0'>
</pre>