diff options
author | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-04-16 14:17:14 +0000 |
---|---|---|
committer | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-04-16 14:17:14 +0000 |
commit | aaf4ad391333d78c73900befb9971ff26d4938d4 (patch) | |
tree | b3ab2f96f0661f23f2b0aa7e1544fab26a31fd9b /linux-user | |
parent | 69a218fc84d96f978dcea41ae4a80d367ebd9fd0 (diff) | |
download | hqemu-aaf4ad391333d78c73900befb9971ff26d4938d4.zip hqemu-aaf4ad391333d78c73900befb9971ff26d4938d4.tar.gz |
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
Diffstat (limited to 'linux-user')
-rw-r--r-- | linux-user/syscall.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 74b41a8..f5875aa 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -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 |