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

Re: Bug#771052: fish: FTBFS on hurd-i386



On Wed, 2014-11-26 at 22:01 +0800, David Adam wrote:
> On Wed, 26 Nov 2014, Svante Signell wrote:
> > Currently fish FTBFS on GNU/Hurd due to usage of sys_nerr and
> > sys_errlist, for error strings, which is not defined on Hurd and
> > depreciated (but still defined on other architectures): e.g.
> > /usr/include/x86_64-linux-gnu/bits/sys_errlist.h
> > /* sys_errlist and sys_nerr are depreciated.  Use strerror instead.  */
> > 
> > The attached patch solves this by using strerror().
> 
> Hi Svante,
> 
> Above the lines you have changed is a comment:
> 
> // In general, strerror is not async-safe, and therefore we cannot use it directly
> // So instead we have to grub through sys_nerr and sys_errlist directly
> 
> Do you know if this has changed in recent glibc? If not, I would caution 
> against changing this on all platforms.

According to the strerror(3) man page:
The strerror() function is not thread-safe.
The strerror_r() function is thread-safe.

I don't know about async-safe. Maybe they mean thread-safe?
However I found one link about the issue:
https://github.com/fish-shell/fish-shell/issues/495

Running the tests shows that the low-level ones pass.


Reply to: