From c39b91e6292bb2aa27f4ee2111ce49e2e6b2d854 Mon Sep 17 00:00:00 2001 From: Mathieu Comandon Date: Wed, 26 Oct 2016 15:21:28 -0700 Subject: [PATCH] Implement save method for WineRegistry --- lutris/util/wineregistry.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lutris/util/wineregistry.py b/lutris/util/wineregistry.py index 5c9c85a78..dca0ee6bb 100644 --- a/lutris/util/wineregistry.py +++ b/lutris/util/wineregistry.py @@ -72,6 +72,7 @@ class WineRegistry(object): self.version = 2 self.relative_to = "\\\\User\\\\S-1-5-21-0-0-0-1000" self.keys = OrderedDict() + self.reg_filename = reg_filename if reg_filename: self.prefix_path = os.path.dirname(reg_filename) self.parse_reg_file(reg_filename) @@ -123,6 +124,15 @@ class WineRegistry(object): content += self.keys[key].render() return content + def save(self, path=None): + """Write the registry to a file""" + if not path: + path = self.reg_filename + if not path: + raise OSError("No filename provided") + with open(path, 'w') as registry_file: + registry_file.write(self.render()) + def query(self, keypath, value=None): key = self.keys.get(keypath) if key: