]> 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:06:41 +0000 (12:06 -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 da218cda497536d3b24adc544b430d7a2982beba..00247b19c800d7c8b8fa7f2ed53878f1a0c6d26f 100644 (file)
@@ -801,7 +801,8 @@ handleCopyIn(PGconn *conn, FILE *copystream, bool isbinary)
                                }
                        }
 
-                       pset.lineno++;
+                       if (copystream == pset.cur_cmd_source)
+                               pset.lineno++;
                }
        }