From: Laurent Vivier Date: Mon, 18 Jan 2016 22:50:45 +0000 (+0100) Subject: linux-user: fix realloc size of target_fd_trans. X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.2~30^2~6^2~8^2~157^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5089c7ce82a49e6a97c5cf3db57a89bca8ed25d8;p=sdk%2Femulator%2Fqemu.git linux-user: fix realloc size of target_fd_trans. target_fd_trans is an array of "TargetFdTrans *": compute size accordingly. Use g_renew() as proposed by Paolo. Reported-by: Paolo Bonzini Signed-off-by: Laurent Vivier Signed-off-by: Riku Voipio --- diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 54ce14a611..dac5518a07 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -318,8 +318,8 @@ static void fd_trans_register(int fd, TargetFdTrans *trans) if (fd >= target_fd_max) { oldmax = target_fd_max; target_fd_max = ((fd >> 6) + 1) << 6; /* by slice of 64 entries */ - target_fd_trans = g_realloc(target_fd_trans, - target_fd_max * sizeof(TargetFdTrans)); + target_fd_trans = g_renew(TargetFdTrans *, + target_fd_trans, target_fd_max); memset((void *)(target_fd_trans + oldmax), 0, (target_fd_max - oldmax) * sizeof(TargetFdTrans *)); }