[Checkins] SVN: zope.app.form/trunk/ Don't try to cast the missing_value to list in SequenceWidget's _getRenderedValue. TODO: add a test case for that, too bad I don't know much zope.app.form things. :(

Dan Korostelev nadako at gmail.com
Fri Feb 20 08:39:25 EST 2009


Log message for revision 96816:
  Don't try to cast the missing_value to list in SequenceWidget's _getRenderedValue. TODO: add a test case for that, too bad I don't know much zope.app.form things. :(

Changed:
  U   zope.app.form/trunk/CHANGES.txt
  U   zope.app.form/trunk/src/zope/app/form/browser/sequencewidget.py

-=-
Modified: zope.app.form/trunk/CHANGES.txt
===================================================================
--- zope.app.form/trunk/CHANGES.txt	2009-02-20 13:25:03 UTC (rev 96815)
+++ zope.app.form/trunk/CHANGES.txt	2009-02-20 13:39:25 UTC (rev 96816)
@@ -8,6 +8,9 @@
 - Fixed bug where OrderedMultiSelectWidget did not respect the widgets
   size attribute.
 
+- Fixed bug in SequenceWidget where it crashed while trying to iterate
+  a missing_value (None in most of cases) on _getRenderedValue.
+
 3.7.1 (2009-01-31)
 ==================
 

Modified: zope.app.form/trunk/src/zope/app/form/browser/sequencewidget.py
===================================================================
--- zope.app.form/trunk/src/zope/app/form/browser/sequencewidget.py	2009-02-20 13:25:03 UTC (rev 96815)
+++ zope.app.form/trunk/src/zope/app/form/browser/sequencewidget.py	2009-02-20 13:39:25 UTC (rev 96816)
@@ -127,7 +127,10 @@
     def _getRenderedValue(self):
         """Returns a sequence from the request or _data"""
         if self._renderedValueSet():
-            sequence = list(self._data)
+            if self._data is self.context.missing_value:
+                sequence = []
+            else:
+                sequence = list(self._data)
         elif self.hasInput():
             sequence = self._generateSequence()
         elif self.context.default is not None:



More information about the Checkins mailing list