appy.gen: bugfix while comparing values for historization purposes.

This commit is contained in:
Gaetan Delannay 2011-03-22 16:45:46 +01:00
parent 4fe5c5e164
commit e87547b789

View file

@ -347,9 +347,14 @@ class BaseMixin:
prev = previousData[field] prev = previousData[field]
appyType = self.getAppyType(field) appyType = self.getAppyType(field)
curr = appyType.getValue(self) curr = appyType.getValue(self)
if (prev == curr) or ((prev == None) and (curr == '')) or \ try:
((prev == '') and (curr == None)): if (prev == curr) or ((prev == None) and (curr == '')) or \
del previousData[field] ((prev == '') and (curr == None)):
del previousData[field]
except UnicodeDecodeError, ude:
# The string comparisons above may imply silent encoding-related
# conversions that may produce this exception.
pass
if (appyType.type == 'Ref') and (field in previousData): if (appyType.type == 'Ref') and (field in previousData):
previousData[field] = [r.title for r in previousData[field]] previousData[field] = [r.title for r in previousData[field]]
if previousData: if previousData: