summaryrefslogtreecommitdiff
path: root/Src/builtin.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/builtin.c')
-rw-r--r--Src/builtin.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Src/builtin.c b/Src/builtin.c
index 31af66c7c..9e08a1dbc 100644
--- a/Src/builtin.c
+++ b/Src/builtin.c
@@ -6508,6 +6508,7 @@ bin_read(char *name, char **args, Options ops, UNUSED(int func))
if (OPT_ISSET(ops,'s') && SHTTY == readfd) {
struct ttyinfo ti;
+ memset(&ti, 0, sizeof(struct ttyinfo));
gettyinfo(&ti);
saveti = ti;
resettty = 1;
@@ -6606,7 +6607,8 @@ bin_read(char *name, char **args, Options ops, UNUSED(int func))
else if (resettty && SHTTY != -1)
settyinfo(&saveti);
if (haso) {
- fclose(shout);
+ if (shout)
+ fclose(shout);
shout = oshout;
SHTTY = -1;
}