From: zhanghailiang <zhang.zhanghaili...@huawei.com>

Handle variable "fd_orig" going out of scope leaks the handle.

Signed-off-by: zhanghailiang <zhang.zhanghaili...@huawei.com>
Reviewed-by: Gonglei <arei.gong...@huawei.com>
Signed-off-by: Michael Tokarev <m...@tls.msk.ru>
---
 linux-user/syscall.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 7ff7c21..8fe9df7 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5167,6 +5167,7 @@ static int open_self_cmdline(void *cpu_env, int fd)
 
         if (word_skipped) {
             if (write(fd, cp_buf, nb_read) != nb_read) {
+                close(fd_orig);
                 return -1;
             }
         }
-- 
1.7.10.4


Reply via email to