From ed58d815d6e964da8c7c9bf3e4822b30c03d93e5 Mon Sep 17 00:00:00 2001 From: Dmitry Astapov Date: Wed, 19 Jun 2013 08:30:33 +0100 Subject: [PATCH] Fix for multiple field assignments in CSV parsing --- 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 afbe53fec..db95a71e7 100644 --- a/hledger-lib/Hledger/Read/CsvReader.hs +++ b/hledger-lib/Hledger/Read/CsvReader.hs @@ -623,9 +623,9 @@ showRecord r = "the CSV record is: "++intercalate ", " (map show r) getEffectiveAssignment :: CsvRules -> CsvRecord -> JournalFieldName -> Maybe FieldTemplate getEffectiveAssignment rules record f = lastMay $ assignmentsFor f where - assignmentsFor f = map snd $ toplevelassignments ++ conditionalassignments + assignmentsFor f = map snd $ filter ((==f).fst) $ toplevelassignments ++ conditionalassignments where - toplevelassignments = filter ((==f).fst) $ rassignments rules + toplevelassignments = rassignments rules conditionalassignments = concatMap snd $ filter blockMatches $ blocksAssigning f where blocksAssigning f = filter (any ((==f).fst) . snd) $ rconditionalblocks rules