diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2001-03-01 18:34:29 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2001-03-01 18:34:29 +0000 |
commit | ea7b4f1f047941e6d689d3cfea68fdbb9c160663 (patch) | |
tree | 9077a4e6556e19bfcc9d9714450d30009ffe3a46 | |
parent | 08372d4e03acc5b9c1666211c950d36ac1cece17 (diff) | |
download | postgresql-ea7b4f1f047941e6d689d3cfea68fdbb9c160663.tar.gz postgresql-ea7b4f1f047941e6d689d3cfea68fdbb9c160663.zip |
Ensure previous setting of pset.queryFout is restored after a failed
backslash-g command.
-rw-r--r-- | src/bin/psql/common.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c index 9d3323a2ac3..d8bd3e8d44d 100644 --- a/src/bin/psql/common.c +++ b/src/bin/psql/common.c @@ -3,7 +3,7 @@ * * Copyright 2000 by PostgreSQL Global Development Group * - * $Header: /cvsroot/pgsql/src/bin/psql/common.c,v 1.30 2001/02/10 02:31:28 tgl Exp $ + * $Header: /cvsroot/pgsql/src/bin/psql/common.c,v 1.31 2001/03/01 18:34:29 tgl Exp $ */ #include "postgres_fe.h" @@ -429,34 +429,35 @@ SendQuery(const char *query) FILE *queryFout_copy = pset.queryFout; bool queryFoutPipe_copy = pset.queryFoutPipe; - pset.queryFout = NULL; /* so it doesn't get + pset.queryFout = stdout; /* so it doesn't get * closed */ /* open file/pipe */ if (!setQFout(pset.gfname)) { + pset.queryFout = queryFout_copy; + pset.queryFoutPipe = queryFoutPipe_copy; success = false; break; } printQuery(results, &pset.popt, pset.queryFout); - /* close file/pipe */ + /* close file/pipe, restore old setting */ setQFout(NULL); - free(pset.gfname); - pset.gfname = NULL; - pset.queryFout = queryFout_copy; pset.queryFoutPipe = queryFoutPipe_copy; + free(pset.gfname); + pset.gfname = NULL; + success = true; - break; } else { - success = true; printQuery(results, &pset.popt, pset.queryFout); + success = true; } break; case PGRES_EMPTY_QUERY: |