lib: fix for #1001 - empty field assignment consumes next line
This commit is contained in:
		
							parent
							
								
									1acebe1493
								
							
						
					
					
						commit
						f108b52171
					
				| @ -554,8 +554,9 @@ fieldassignmentp :: CsvRulesParser (JournalFieldName, FieldTemplate) | |||||||
| fieldassignmentp = do | fieldassignmentp = do | ||||||
|   lift $ dbgparse 3 "trying fieldassignmentp" |   lift $ dbgparse 3 "trying fieldassignmentp" | ||||||
|   f <- journalfieldnamep |   f <- journalfieldnamep | ||||||
|   assignmentseparatorp |   v <- choiceInState [ assignmentseparatorp >> fieldvalp | ||||||
|   v <- fieldvalp |                      , lift eolof >> return "" | ||||||
|  |                      ] | ||||||
|   return (f,v) |   return (f,v) | ||||||
|   <?> "field assignment" |   <?> "field assignment" | ||||||
| 
 | 
 | ||||||
| @ -594,12 +595,9 @@ journalfieldnames = | |||||||
| assignmentseparatorp :: CsvRulesParser () | assignmentseparatorp :: CsvRulesParser () | ||||||
| assignmentseparatorp = do | assignmentseparatorp = do | ||||||
|   lift $ dbgparse 3 "trying assignmentseparatorp" |   lift $ dbgparse 3 "trying assignmentseparatorp" | ||||||
|   choice [ |   _ <- choiceInState [ lift (skipMany spacenonewline) >> char ':' >> lift (skipMany spacenonewline) | ||||||
|     -- try (lift (skipMany spacenonewline) >> oneOf ":="), |                      , lift (skipSome spacenonewline) | ||||||
|     try (lift (skipMany spacenonewline) >> char ':'), |                      ] | ||||||
|     spaceChar |  | ||||||
|     ] |  | ||||||
|   _ <- lift (skipMany spacenonewline) |  | ||||||
|   return () |   return () | ||||||
| 
 | 
 | ||||||
| fieldvalp :: CsvRulesParser String | fieldvalp :: CsvRulesParser String | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user