From 5485990cac751dce4b18b740503af507f0a47993 Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Wed, 1 Sep 2021 06:58:01 -1000 Subject: [PATCH] fix: csv: report correct CSV line number in errors Some errors in CSV conversion, such as a failing balance assertion, were always being reported as line 2. Reported by Lawrence Wu. --- hledger-lib/Hledger/Read/CsvReader.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hledger-lib/Hledger/Read/CsvReader.hs b/hledger-lib/Hledger/Read/CsvReader.hs index 779f60bcb..f70977944 100644 --- a/hledger-lib/Hledger/Read/CsvReader.hs +++ b/hledger-lib/Hledger/Read/CsvReader.hs @@ -740,7 +740,7 @@ readJournalFromCsv mrulesfile csvfile csvdata = -- mfieldnames = lastMay headerlines let - -- convert CSV records to transactions + -- convert CSV records to transactions, saving the CSV line numbers for error positions txns = dbg7 "csv txns" $ snd $ mapAccumL (\pos r -> let @@ -748,7 +748,7 @@ readJournalFromCsv mrulesfile csvfile csvdata = line' = (mkPos . (+1) . unPos) line pos' = SourcePos name line' col in - (pos, transactionFromCsvRecord pos' rules r) + (pos', transactionFromCsvRecord pos rules r) ) (initialPos parsecfilename) records