Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
[PATCH 1/5] Modules/clone: fix double close()
Detected by Coverity Analysis.
Error: USE_AFTER_FREE (CWE-825):
zsh-5.5.1/Src/Modules/clone.c:71: closed_arg: "close(int)" closes "ttyfd".
zsh-5.5.1/Src/Modules/clone.c:99: double_close: Calling "close(int)" closes handle "ttyfd" which has already been closed.
97| setsparam("TTY", ztrdup(ttystrname));
98| }
99|-> close(ttyfd);
100| if (pid < 0) {
101| zerrnam(nam, "fork failed: %e", errno);
---
Src/Modules/clone.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/Src/Modules/clone.c b/Src/Modules/clone.c
index ef6275dcf..4b2655505 100644
--- a/Src/Modules/clone.c
+++ b/Src/Modules/clone.c
@@ -96,7 +96,8 @@ bin_clone(char *nam, char **args, UNUSED(Options ops), UNUSED(int func))
init_io(NULL);
setsparam("TTY", ztrdup(ttystrname));
}
- close(ttyfd);
+ else
+ close(ttyfd);
if (pid < 0) {
zerrnam(nam, "fork failed: %e", errno);
return 1;
--
2.17.2
Messages sorted by:
Reverse Date,
Date,
Thread,
Author