aboutsummaryrefslogtreecommitdiff
path: root/lib/python
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2009-03-11 08:06:04 +0100
committerFelix Domke <tmbinc@elitedvb.net>2009-03-11 08:06:04 +0100
commitc5e9c66d00e481493bbc3f63f98e57ac68962ce0 (patch)
treef3370e52e06925289c18fdf59aa3bb2b7767942f /lib/python
parentfeaeba88fdfa0a51fec05a79e51e8111ffe0c4d0 (diff)
downloadenigma2-c5e9c66d00e481493bbc3f63f98e57ac68962ce0.tar.gz
enigma2-c5e9c66d00e481493bbc3f63f98e57ac68962ce0.zip
Patch by Moritz Venn:
The current implementation of ConfigNumber.isChanged (the one inherited from ConfigElement) does not work properly as it will - at least for unsaved values - always returns True. This is obvious if you just take a look at the datatypes since value is an int and default is a string (because ConfigNumber is a modified ConfigText). To resolve this issue one can either compare self.tostring(self.value) or self.text to self.default but the former seems to be the more logical approach. The attached patch does override the method in ConfigNumber with the proposed fix.
Diffstat (limited to 'lib/python')
-rwxr-xr-xlib/python/Components/config.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/python/Components/config.py b/lib/python/Components/config.py
index 4cc40633..24d39cba 100755
--- a/lib/python/Components/config.py
+++ b/lib/python/Components/config.py
@@ -1029,6 +1029,13 @@ class ConfigNumber(ConfigText):
value = property(getValue, setValue)
_value = property(getValue, setValue)
+ def isChanged(self):
+ sv = self.saved_value
+ strv = self.tostring(self.value)
+ if sv is None and strv == self.default:
+ return False
+ return strv != sv
+
def conform(self):
pos = len(self.text) - self.marked_pos
self.text = self.text.lstrip("0")