lib: fix for #1001 - empty field assignment consumes next line

This commit is contained in:
Dmitry Astapov 2019-10-12 23:35:57 +01:00
parent 1acebe1493
commit f108b52171

View File

@ -554,8 +554,9 @@ fieldassignmentp :: CsvRulesParser (JournalFieldName, FieldTemplate)
fieldassignmentp = do
lift $ dbgparse 3 "trying fieldassignmentp"
f <- journalfieldnamep
assignmentseparatorp
v <- fieldvalp
v <- choiceInState [ assignmentseparatorp >> fieldvalp
, lift eolof >> return ""
]
return (f,v)
<?> "field assignment"
@ -594,12 +595,9 @@ journalfieldnames =
assignmentseparatorp :: CsvRulesParser ()
assignmentseparatorp = do
lift $ dbgparse 3 "trying assignmentseparatorp"
choice [
-- try (lift (skipMany spacenonewline) >> oneOf ":="),
try (lift (skipMany spacenonewline) >> char ':'),
spaceChar
_ <- choiceInState [ lift (skipMany spacenonewline) >> char ':' >> lift (skipMany spacenonewline)
, lift (skipSome spacenonewline)
]
_ <- lift (skipMany spacenonewline)
return ()
fieldvalp :: CsvRulesParser String