aboutsummaryrefslogtreecommitdiffstats
path: root/awkgram.c
diff options
context:
space:
mode:
Diffstat (limited to 'awkgram.c')
-rw-r--r--awkgram.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/awkgram.c b/awkgram.c
index bc91d406..5455430b 100644
--- a/awkgram.c
+++ b/awkgram.c
@@ -6547,6 +6547,8 @@ dump_vars(const char *fname)
if (fname == NULL)
fp = stderr;
+ else if (strcmp(fname, "-") == 0)
+ fp = stdout;
else if ((fp = fopen(fname, "w")) == NULL) {
warning(_("could not open `%s' for writing (%s)"), fname, strerror(errno));
warning(_("sending variable list to standard error"));
@@ -6556,7 +6558,7 @@ dump_vars(const char *fname)
vars = variable_list();
print_vars(vars, fprintf, fp);
efree(vars);
- if (fp != stderr && fclose(fp) != 0)
+ if (fp != stdout && fp != stderr && fclose(fp) != 0)
warning(_("%s: close failed (%s)"), fname, strerror(errno));
}