Mercurial > hg > nginx
comparison src/event/modules/ngx_kqueue_module.c @ 623:0216fd1471f3 release-0.3.33
nginx-0.3.33-RELEASE import
*) Feature: the "http_503" parameter of the "proxy_next_upstream" or
"fastcgi_next_upstream" directives.
*) Bugfix: ngx_http_perl_module did not work with inlined in the
configuration code, if it was not started with the "sub" word.
*) Bugfix: in the "post_action" directive.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 15 Mar 2006 09:53:04 +0000 |
parents | 7a16e281c01f |
children | f69d1aab6a0f a78cfc7623d0 |
comparison
equal
deleted
inserted
replaced
622:b088081fe8c3 | 623:0216fd1471f3 |
---|---|
489 if (timer == NGX_TIMER_INFINITE) { | 489 if (timer == NGX_TIMER_INFINITE) { |
490 tp = NULL; | 490 tp = NULL; |
491 | 491 |
492 } else { | 492 } else { |
493 | 493 |
494 ts.tv_sec = timer / 1000; | |
495 ts.tv_nsec = (timer % 1000) * 1000000; | |
496 | |
494 /* | 497 /* |
495 * 64-bit MacOSX kernel has the bug: kernel level ts.tv_nsec is | 498 * 64-bit Darwin kernel has the bug: kernel level ts.tv_nsec is |
496 * the int32_t while user level ts.tv_nsec is the long (64-bit), | 499 * the int32_t while user level ts.tv_nsec is the long (64-bit), |
497 * so on the big endian PowerPC all nanoseconds are lost. | 500 * so on the big endian PowerPC all nanoseconds are lost. |
498 * NGX_MACOSX_KEVENT_BUG_SHIFT on these machines is "<< 32". | |
499 */ | 501 */ |
500 | 502 |
501 ts.tv_sec = timer / 1000; | 503 #if (NGX_DARWIN_KEVENT_BUG) |
502 ts.tv_nsec = (long) ((timer % 1000) * 1000000) | 504 ts.tv_nsec <<= 32; |
503 NGX_MACOSX_KEVENT_BUG_SHIFT; | 505 #endif |
506 | |
504 tp = &ts; | 507 tp = &ts; |
505 } | 508 } |
506 | 509 |
507 ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, | 510 ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, |
508 "kevent timer: %M, changes: %d", timer, n); | 511 "kevent timer: %M, changes: %d", timer, n); |