From 74e3cce0a26c04a762b67cb21f4566d4bb58cb59 Mon Sep 17 00:00:00 2001 From: Jeremy Fincher Date: Sun, 1 Aug 2004 18:08:55 +0000 Subject: [PATCH] Slightly nicer fix, I don't know why I didn't think of this before. --- src/registry.py | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/registry.py b/src/registry.py index 204f1a501..d9dd6072b 100644 --- a/src/registry.py +++ b/src/registry.py @@ -407,25 +407,19 @@ class Regexp(Value): def set(self, s): try: if s: - self.value = utils.perlReToPythonRe(s) - self._lastModified = time.time() - # Since we aren't calling self.setValue(), we need to run the - # following code. If we don't, self.value isn't properly - # updated. - if self.supplyDefault: - for (name, v) in self.children.items(): - if v.__class__ is self.X: - self.unregister(name) + self.setValue(utils.perlReToPythonRe(s), sr=s) else: self.setValue(None) - self.sr = s except ValueError, e: self.error(e) - def setValue(self, v): + def setValue(self, v, sr=None): if v is None: self.sr = '' Value.setValue(self, None) + elif sr is not None: + self.sr = sr + Value.setValue(self, v) else: raise InvalidRegistryValue, \ 'Can\'t setValue a regexp, there would be an inconsistency '\