linux-user: fix getcwd syscall

The patch called "prefer glibc over direct syscalls" (commit 7118) has
replaced the getcwd syscall with a call to the glibc. With this change,
the syscall is returning -1 in error case and 0 otherwise.
This is problematic as the sys_getcwd syscall should return the number
of bytes written to the buffer including the '\0'.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-By: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7130 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
aurel32 2009-04-16 14:17:14 +00:00
parent 69a218fc84
commit aaf4ad3913

View File

@ -293,7 +293,7 @@ static int sys_getcwd1(char *buf, size_t size)
/* getcwd() sets errno */
return (-1);
}
return (0);
return strlen(buf)+1;
}
#ifdef CONFIG_ATFILE