diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | thread.c | 6 | ||||
-rw-r--r-- | util.c | 6 | ||||
-rw-r--r-- | win32/win32.c | 2 |
4 files changed, 14 insertions, 8 deletions
@@ -1,3 +1,11 @@ +Sun Oct 26 18:01:06 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread.c (blocking_region_{begin,end}): declared as inline. + + * util.c (freedtoa): used only when MULTIPLE_THREADS is not defined. + + * win32/win32.c (rb_w32_pipe): serial is DWORD. + Sun Oct 26 13:30:28 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> * io.c (read_all): use the given buffer to read when needs readconv. @@ -95,9 +95,9 @@ static void set_unblock_function(rb_thread_t *th, rb_unblock_function_t *func, v struct rb_unblock_callback *old); static void reset_unblock_function(rb_thread_t *th, const struct rb_unblock_callback *old); -static void blocking_region_begin(rb_thread_t *th, struct rb_blocking_region_buffer *region, - rb_unblock_function_t *func, void *arg); -static void blocking_region_end(rb_thread_t *th, struct rb_blocking_region_buffer *region); +static void inline blocking_region_begin(rb_thread_t *th, struct rb_blocking_region_buffer *region, + rb_unblock_function_t *func, void *arg); +static void inline blocking_region_end(rb_thread_t *th, struct rb_blocking_region_buffer *region); #define GVL_UNLOCK_BEGIN() do { \ rb_thread_t *_th_stored = GET_THREAD(); \ @@ -3086,6 +3086,7 @@ nrv_alloc(const char *s, char **rve, int n) return rv; } +#ifndef MULTIPLE_THREADS /* freedtoa(s) must be used to free values s returned by dtoa * when MULTIPLE_THREADS is #defined. It should be used in all cases, * but for consistency with earlier versions of dtoa, it is optional @@ -3098,11 +3099,8 @@ freedtoa(char *s) Bigint *b = (Bigint *)((int *)s - 1); b->maxwds = 1 << (b->k = *(int*)b); Bfree(b); -#ifndef MULTIPLE_THREADS - if (s == dtoa_result) - dtoa_result = 0; -#endif } +#endif /* dtoa for IEEE arithmetic (dmg): convert double to ASCII string. * diff --git a/win32/win32.c b/win32/win32.c index b0db5f40b8..c3a5c8c5dd 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -4182,7 +4182,7 @@ rb_w32_pipe(int fds[2]) return _pipe(fds, 65536L, _O_NOINHERIT); p = strchr(name, '0'); - snprintf(p, strlen(p) + 1, "%x-%x", rb_w32_getpid(), serial++); + snprintf(p, strlen(p) + 1, "%x-%lx", rb_w32_getpid(), serial++); sec.nLength = sizeof(sec); sec.lpSecurityDescriptor = NULL; |