Mercurial > p > roundup > code
diff roundup/backends/rdbms_common.py @ 5467:630a00b20394
strings have an __iter__ method on Python 3, but we don't want to consider them iterable
| author | Christof Meerwald <cmeerw@cmeerw.org> |
|---|---|
| date | Sat, 28 Jul 2018 20:41:06 +0100 |
| parents | 56c9bcdea47f |
| children | 6b0c542642be |
line wrap: on
line diff
--- a/roundup/backends/rdbms_common.py Sat Jul 28 20:34:31 2018 +0100 +++ b/roundup/backends/rdbms_common.py Sat Jul 28 20:41:06 2018 +0100 @@ -1614,7 +1614,7 @@ elif isinstance(prop, Multilink): if value is None: value = [] - if not hasattr(value, '__iter__'): + if not hasattr(value, '__iter__') or type(value) == type(''): raise TypeError('new property "%s" not an iterable of ids'%key) # clean up and validate the list of links link_class = self.properties[key].classname @@ -1874,7 +1874,7 @@ elif isinstance(prop, Multilink): if value is None: value = [] - if not hasattr(value, '__iter__'): + if not hasattr(value, '__iter__') or type(value) == type(''): raise TypeError('new property "%s" not an iterable of' ' ids'%propname) link_class = self.properties[propname].classname
