Revert 3df60ef51 and add test to prevent further breakage

This commit is contained in:
Mathieu Comandon 2018-05-19 00:49:35 -07:00
parent 3dd2c07ffb
commit 280ddbafcf
2 changed files with 5 additions and 2 deletions

View file

@ -216,11 +216,11 @@ class WineRegistryKey(object):
self.add_meta(line)
elif line.startswith('"'):
try:
key, value = re.split(re.compile(r"(?<![^\\]\\\")\"="), line, maxsplit=1)
key, value = re.split(re.compile(r"(?<![^\\]\\\")="), line, maxsplit=1)
except ValueError as ex:
logger.error("Unable to parse line %s", line)
raise
key = key[1:]
key = key[1:-1]
self.subkeys[key] = value
elif line.startswith('@'):
k, v = line.split('=', 1)

View file

@ -110,3 +110,6 @@ class TestWineRegistryKey(TestCase):
key.parse('"String with \"quotes\""=val')
self.assertEqual(key.subkeys['String with \"quotes\"'], 'val')
key.parse('"\"C:\\Program Files\\Windows Media Player\\wmplayer.exe\""="Yes"')
self.assertEqual(key.subkeys['\"C:\\Program Files\\Windows Media Player\\wmplayer.exe\"'], '"Yes"')