Control: reassign -1 python-matplotlib 1.3.1-1
Control: severity -1 important
Control: block 706533 by -1

This turns out to be a bug in python-matplotlib. A patch that fixes this bug is
attached. After also applying first hunk of [1], nitime builds fine.

The matplotlib patch is taken from [2].

[1]: https://github.com/nipy/nitime/commit/d9004946ea8f
[2]: https://github.com/matplotlib/matplotlib/commit/cee4ba990c7e20

--
Dmitry Shachnev
Description: fix infinite recursion in units with ndarray subclasses
Origin: upstream, https://github.com/matplotlib/matplotlib/commit/21fd7c03ba1444
Last-Update: 2013-12-24

--- a/lib/matplotlib/units.py
+++ b/lib/matplotlib/units.py
@@ -145,7 +145,13 @@
                     return converter
             except AttributeError:
                 # not a masked_array
-                converter = self.get_converter(xravel[0])
+                # Make sure we don't recurse forever -- it's possible for
+                # ndarray subclasses to continue to return subclasses and
+                # not ever return a non-subclass for a single element.
+                next_item = xravel[0]
+                if (not isinstance(next_item, np.ndarray) or
+                    next_item.shape != x.shape):
+                    converter = self.get_converter(next_item)
                 return converter
 
         if converter is None and iterable(x):

Reply via email to