Samuel Thibault wrote:
zhengda, le Fri 15 Aug 2008 20:05:53 +0200, a écrit :
Samuel Thibault wrote:
zhengda, le Fri 15 Aug 2008 19:05:49 +0200, a écrit :
Samuel Thibault wrote:
zhengda, le Fri 15 Aug 2008 18:27:00 +0200, a écrit :

+      if (__asprintf (&name, "SOCK_SERV_%d", domain) < 0)
+    __libc_fatal ("hurd: Can't get the socket server path\n");
Shouldn't we just return ENOMEM?

In many parts of glibc, __libc_fatal() or assert() is used.
When there is no way to report the error, isn't it?
In the place where __libc_fatal() is called, you're right. They are usually the initialization routines. But for the case of assert(), I don't think so. make_hol() is an example.

Because its caller, _help, doesn't have a way to return an error.
And anyway, it's not because some code may be bad that you should do the
same :)
I wonder how I return ENOMEM? Does asprintf() write the errno itself? Should the function returns immediately after __asprintf() returns error?

Zheng Da


Reply via email to