From df0b7c362551a5ea9fb196a3c003a864e1de845b Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Mon, 12 Jul 2010 16:27:14 +0200 Subject: [PATCH] [molecule.settings] fix parser bug causing statement values containing ":" to be truncated --- molecule/settings.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/molecule/settings.py b/molecule/settings.py index 512e046..5f05aeb 100644 --- a/molecule/settings.py +++ b/molecule/settings.py @@ -235,16 +235,18 @@ class SpecParser: old_key = None for line in data: key = None - if ":" in line: - key, value = self.parse_line_statement(line) - if key is None: - continue + value = None + v_key, v_value = self.parse_line_statement(line) + check_dict = self.parser_data_path.get(v_key) + if check_dict is not None: + key, value = v_key, v_value old_key = key elif isinstance(old_key, get_stringtype()): key = old_key value = line.strip() if not value: continue + # gather again... key is changed check_dict = self.parser_data_path.get(key) if not isinstance(check_dict, dict): continue