Re: [PATCHES] Bad bug in fopen() wrapper code

Поиск
Список
Период
Сортировка
От Magnus Hagander
Тема Re: [PATCHES] Bad bug in fopen() wrapper code
Дата
Msg-id 6BCB9D8A16AC4241919521715F4D8BCEA35766@algol.sollentuna.se
обсуждение исходный текст
Ответ на Re: [PATCHES] Bad bug in fopen() wrapper code  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: [PATCHES] Bad bug in fopen() wrapper code  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: [PATCHES] Bad bug in fopen() wrapper code  (Bruce Momjian <bruce@momjian.us>)
Список pgsql-hackers
> >> Now, I still twist my head around the lines:
> >> if ((fd = _open_osfhandle((long) h, fileFlags & O_APPEND)) < 0
> >> ||
> >> (fileFlags & (O_TEXT | O_BINARY) && (_setmode(fd, fileFlags &
> (O_TEXT
> >> | O_BINARY)) < 0)))
>
> > Without having studied it closely, it might also highlight a bug
> on
> > failure of the second clause -- if the _setmode fails, shouldn't
> > _close be called instead of CloseHandle, and -1 returned?
> > (CloseHandle would still be called on failure of the
> _open_osfhandle,
> > obviously)
>
> I agree that this code is both wrong and unreadable (although in
> practice the _setmode will probably never fail, which is why our
> attention hasn't been drawn to it).  Is someone going to submit a
> patch?  I'm hesitant to change the code myself since I'm not in a
> position to test it.

I can look at fixing that. Is it something we want to do for 8.2, or
wait until 8.3? If there's a hidden bug, I guess 8.2?

//Magnus

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Hannu Krosing
Дата:
Сообщение: Re: Another idea for dealing with cmin/cmax
Следующее
От: José Orlando Pereira
Дата:
Сообщение: Re: Replication hooks discussion