[devel] glibc 6:2.5-alt2 to git-push
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Вс Окт 15 15:21:02 MSD 2006
On Sun, Oct 15, 2006 at 02:58:00PM +0400, Alexey Tourbin wrote:
> On Sun, Oct 15, 2006 at 02:42:44PM +0400, Dmitry V. Levin wrote:
> > > Кстати с asprintf результат можно не проверять, вот каким образом:
> > >
> > > char *ptr = NULL;
> > > asprintf(&ptr, fmt, ...);
> > > if (ptr) {
> > > ...
> > > } else {
> > > // asprintf failed
> > > }
> >
> > Это не переносимо на другие дистрибутивы. У меня когда-то давно была
> > растянутая во времени дискуссия в libc-alpha с Дреппером на тему
> > glibc-2.5-alt-asprintf.patch, можно нагуглить. В конечном итоге меня
> > поддержали все кроме Дреппера. :)
>
> Нет, ты с ним дискутировал о том, что asprintf должен ЗАНУЛЯТЬ ptr если
> внутри пошло что-то не так (упал malloc).
Нет, ты слишком узко трактуешь.
> Здесь же я НЕ рассчитываю на
> то, что asprintf занулит prt -- он уже занулен с самого начала; а всего
> лишь на то, что при ошибке asprintf не будет его модифицировать (или же
> таки занулит).
Ванильный asprintf в случае ошибки оставит по адресу prt неизвестно что,
например, это может быть адрес памяти, которую он использовал во время
работы.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20061015/971e916d/attachment-0001.bin>
Подробная информация о списке рассылки Devel