From: Charles Bailey <hidden> Date: 2016-06-15 23:05:46
From: Charles Bailey <redacted>
According to POSIX specification uname must return -1 on failure and a
non-negative value on success. Although many implementations do return 0
on success it is valid to return any positive value for success. In
particular, Solaris returns 1.
Signed-off-by: Charles Bailey <redacted>
---
dir.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -1848,7 +1848,7 @@ static const char *get_ident_string(void)if(sb.len)returnsb.buf;-if(uname(&uts))+if(uname(&uts)==-1)die_errno(_("failed to get kernel name and information"));strbuf_addf(&sb,"Location %s, system %s %s %s",get_git_work_tree(),uts.sysname,uts.release,uts.version);
From a quick `git grep '== -1'` and another quick `git grep '< 0'` it appears to me that we prefer the latter. Maybe you want to adjust it in the patch, too?
From: Charles Bailey <hidden> Date: 2016-06-15 23:05:47
On Fri, Jul 17, 2015 at 03:06:57PM +0200, Johannes Schindelin wrote:
From a quick `git grep '== -1'` and another quick `git grep '< 0'` it appears to me that we prefer the latter. Maybe you want to adjust it in the patch, too?
I did the same grep and found lots of examples of both. Many of the "<
0" applied to comparisons with variables and not API calls and many were
internal (to git) calls and not POSIX or C library calls so I wasn't
convinced to change my initial fix.
Having said that and thought about it some more, I think '< 0' is
probably better. In POSIX, we shouldn't ever get a negative value which
isn't -1, but if we ever do it is probably safer to fail. I'll send and
update.
Charles.
From: Charles Bailey <hidden> Date: 2016-06-15 23:05:47
From: Charles Bailey <redacted>
According to POSIX specification uname must return -1 on failure and a
non-negative value on success. Although many implementations do return 0
on success it is valid to return any positive value for success. In
particular, Solaris returns 1.
Signed-off-by: Charles Bailey <redacted>
---
dir.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -1848,7 +1848,7 @@ static const char *get_ident_string(void)if(sb.len)returnsb.buf;-if(uname(&uts))+if(uname(&uts)<0)die_errno(_("failed to get kernel name and information"));strbuf_addf(&sb,"Location %s, system %s %s %s",get_git_work_tree(),uts.sysname,uts.release,uts.version);
From: Johannes Schindelin <hidden> Date: 2016-06-15 23:05:47
On 2015-07-17 19:09, Charles Bailey wrote:
From: Charles Bailey <redacted>
According to POSIX specification uname must return -1 on failure and a
non-negative value on success. Although many implementations do return 0
on success it is valid to return any positive value for success. In
particular, Solaris returns 1.
Signed-off-by: Charles Bailey <redacted>