summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2000-03-27 21:11:37 +0000
committerPeter Eisentraut <peter_e@gmx.net>2000-03-27 21:11:37 +0000
commita9f37f16d200076c2ccdba621465e4f8d7d9316f (patch)
tree9b406bc90ad2521095818f8e1021cbf3e499052a /src
parent39f69bc38f0f58cc4f6b05451fced030bfac935e (diff)
downloadpostgresql-a9f37f16d200076c2ccdba621465e4f8d7d9316f.tar.gz
Fixed bug with repeated \e in psql (failed to clear buffers correctly)
Diffstat (limited to 'src')
-rw-r--r--src/bin/psql/command.c24
-rw-r--r--src/bin/psql/mainloop.c4
2 files changed, 12 insertions, 16 deletions
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index db250f02b6..5c6929a719 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.25 2000/03/18 22:48:29 petere Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.26 2000/03/27 21:11:37 petere Exp $
*/
#include "postgres.h"
#include "command.h"
@@ -1442,21 +1442,16 @@ do_edit(const char *filename_arg, PQExpBuffer query_buf)
{
/* read file back in */
char line[1024];
- size_t result;
resetPQExpBuffer(query_buf);
- do
- {
- result = fread(line, 1, 1024, stream);
- if (ferror(stream))
- {
- psql_error("%s: %s\n", fname, strerror(errno));
- error = true;
- break;
- }
- appendBinaryPQExpBuffer(query_buf, line, result);
- } while (!feof(stream));
- appendPQExpBufferChar(query_buf, '\0');
+ while (fgets(line, 1024, stream))
+ appendPQExpBufferStr(query_buf, line);
+
+ if (ferror(stream))
+ {
+ psql_error("%s: %s\n", fname, strerror(errno));
+ error = true;
+ }
fclose(stream);
}
@@ -1471,6 +1466,7 @@ do_edit(const char *filename_arg, PQExpBuffer query_buf)
}
}
}
+
return !error;
}
diff --git a/src/bin/psql/mainloop.c b/src/bin/psql/mainloop.c
index eadd50e94a..b27d344a78 100644
--- a/src/bin/psql/mainloop.c
+++ b/src/bin/psql/mainloop.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.26 2000/03/18 18:03:11 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.27 2000/03/27 21:11:37 petere Exp $
*/
#include "postgres.h"
#include "mainloop.h"
@@ -481,7 +481,7 @@ MainLoop(FILE *source)
/* Put the rest of the line in the query buffer. */
- if (line[query_start + strspn(line + query_start, " \t")] != '\0')
+ if (line[query_start + strspn(line + query_start, " \t\n")] != '\0')
{
if (query_buf->len > 0)
appendPQExpBufferChar(query_buf, '\n');