From eb98d0766cd12a64dfc33faeedc988582565a07b Mon Sep 17 00:00:00 2001 From: Thomas A Caswell Date: Mon, 13 Mar 2017 15:23:37 -0400 Subject: [PATCH] FIX: add __setstate__ function To prevent an infinite recursion add a __setstate__ method so that we do not consult `_rrule` before it exists --- lib/matplotlib/dates.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/dates.py b/lib/matplotlib/dates.py index 45063b835886..65a7d249f45e 100644 --- a/lib/matplotlib/dates.py +++ b/lib/matplotlib/dates.py @@ -711,12 +711,13 @@ def set(self, **kwargs): self._rrule = rrule(**self._construct) def __getattr__(self, name): - if name in ['__getstate__', '__setstate__']: - return object.__getattr__(self, name) if name in self.__dict__: return self.__dict__[name] return getattr(self._rrule, name) + def __setstate__(self, state): + self.__dict__.update(state) + class DateLocator(ticker.Locator): """