1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
$NetBSD: patch-as,v 1.1.1.1 2010/09/12 03:50:06 taca Exp $
Handle 64bit size of time_t.
--- thread_pthread.c.orig 2010-07-22 13:13:57.000000000 +0000
+++ thread_pthread.c
@@ -17,6 +17,12 @@
#include <sys/resource.h>
#endif
+#if SIZEOF_TIME_T == 8
+#define FMT_TIME_T "lld"
+#else
+#define FMT_TIME_T "ld"
+#endif
+
static void native_mutex_lock(pthread_mutex_t *lock);
static void native_mutex_unlock(pthread_mutex_t *lock);
static int native_mutex_trylock(pthread_mutex_t *lock);
@@ -620,7 +626,7 @@ native_sleep(rb_thread_t *th, struct tim
}
}
- thread_debug("native_sleep %ld\n", tv ? tv->tv_sec : -1);
+ thread_debug("native_sleep %" FMT_TIME_T "\n", tv ? tv->tv_sec : -1);
GVL_UNLOCK_BEGIN();
{
pthread_mutex_lock(&th->interrupt_lock);
@@ -642,8 +648,8 @@ native_sleep(rb_thread_t *th, struct tim
}
else {
int r;
- thread_debug("native_sleep: pthread_cond_timedwait start (%ld, %ld)\n",
- (unsigned long)ts.tv_sec, ts.tv_nsec);
+ thread_debug("native_sleep: pthread_cond_timedwait start (%"
+ FMT_TIME_T ", %ld)\n", ts.tv_sec, ts.tv_nsec);
r = pthread_cond_timedwait(&th->native_thread_data.sleep_cond,
&th->interrupt_lock, &ts);
if (r && r != ETIMEDOUT) rb_bug_errno("pthread_cond_timedwait", r);
|