]> granicus.if.org Git - postgresql/commitdiff
Fix psql's counting of script file line numbers during COPY.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 5 Jul 2011 16:04:40 +0000 (12:04 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 5 Jul 2011 16:05:15 +0000 (12:05 -0400)
handleCopyIn incremented pset.lineno for each line of COPY data read from
a file.  This is correct when reading from the current script file (i.e.,
we are doing COPY FROM STDIN followed by in-line data), but it's wrong if
the data is coming from some other file.  Per bug #6083 from Steve Haslam.
Back-patch to all supported versions.

src/bin/psql/copy.c

index 5e69d29b6cbeab56aa0c85e85c3edce46d06efac..ebe5ee9ea551b858a4ad6119322405109d3212d8 100644 (file)
@@ -586,7 +586,8 @@ handleCopyIn(PGconn *conn, FILE *copystream, bool isbinary)
                                }
                        }
 
-                       pset.lineno++;
+                       if (copystream == pset.cur_cmd_source)
+                               pset.lineno++;
                }
        }