untracked: fix detection of uname(2) failure

According to POSIX specification uname(2) 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 <cbailey32@bloomberg.net>
Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Charles Bailey 2015-07-17 18:09:41 +01:00 коммит произвёл Junio C Hamano
Родитель 1e8fef609e
Коммит 100e433741
1 изменённых файлов: 1 добавлений и 1 удалений

2
dir.c
Просмотреть файл

@ -1801,7 +1801,7 @@ static const char *get_ident_string(void)
if (sb.len)
return sb.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);