ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx-0.5.32 crashed



On Thu, Oct 18, 2007 at 03:54:53PM +0400, Denis Erygin wrote:

> Это вот к чему:
> 
> ngx_event_pipe(p, ev->write) => декларируется
> как ngx_int_t ngx_event_pipe (ngx_event_pipe_t *p, int do_write)
> 
> #0  0x08059f8e in ngx_event_pipe (p=0x8316714, do_write=-791621424) at 
> src/event/ngx_event_pipe.c:43
> 
> При входе в функцию
> ( do_write = ev->write ) < 0
> 
> src/event/ngx_event_pipe.c:31
> . . .
> for ( ;; ) {
>        if (do_write) {  - вот тут как-то нехорошо выглядит для do_write < 0
> . . .
>   do_write = 1;
> }
> . . .
> 
> Так задумано?

Выглядит странно, по идее, там должен быть или 0, или 1.

> ----- Original Message ----- 
> From: "Igor Sysoev" <is@xxxxxxxxxxxxx>
> To: <nginx-ru@xxxxxxxxx>
> Sent: Thursday, October 18, 2007 3:20 PM
> Subject: Re: nginx-0.5.32 crashed
> 
> 
> On Thu, Oct 18, 2007 at 03:08:51PM +0400, Denis Erygin wrote:
> 
> >src/http/ngx_http_upstream.c: [1890, 1898]:
> >. . .
> >if (ngx_event_pipe(p, ev->write) == NGX_ABORT)
> >{
> >  if (downstream->destroyed) {
> >     return;
> >  }
> >
> >  ngx_http_upstream_finalize_request(r, u, 0);
> >  return;
> >}
> >. . .
> >
> >Нормально ли, когда ev->write < 0 ?
> >например ev->write = -791621424
> 
> Вообще-то, ev->write - это один бит:
> 
> struct ngx_event_s {
>    void            *data;
> 
>    unsigned         write:1;
>    ...
> 
> 
> -- 
> Игорь Сысоев
> http://sysoev.ru
> 
> 

-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.