linux-user: fix emulation of getdents
commit333858b77c2b4f7636257808a77822c58bdd80fe
authorDmitry V. Levin <ldv@altlinux.org>
Mon, 20 Aug 2012 22:13:12 +0000 (21 02:13 +0400)
committerRiku Voipio <riku.voipio@linaro.org>
Mon, 27 Aug 2012 07:17:30 +0000 (27 10:17 +0300)
tree09c5fd3e0c80db779e995ee736355b55908c7552
parent42644cee08f85202f5d3e8babf6503487849353a
linux-user: fix emulation of getdents

In case when TARGET_ABI_BITS == 32 && HOST_LONG_BITS == 64, the last
byte of the target dirent structure (aka d_type byte) was never copied
from the host dirent structure, thus breaking everything that relies
on valid d_type value, e.g. glob(3).

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
linux-user/syscall.c
linux-user/syscall_defs.h