summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Modules/_pickle.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/Modules/_pickle.c b/Modules/_pickle.c
index 4976cc5..bda8efd 100644
--- a/Modules/_pickle.c
+++ b/Modules/_pickle.c
@@ -691,9 +691,9 @@ whichmodule(PyObject *global, PyObject *global_name)
module_name = PyObject_GetAttr(global, module_str);
- /* In some rare cases (e.g., random.getrandbits), __module__ can be
- None. If it is so, then search sys.modules for the module of
- global. */
+ /* In some rare cases (e.g., bound methods of extension types),
+ __module__ can be None. If it is so, then search sys.modules
+ for the module of global. */
if (module_name == Py_None) {
Py_DECREF(module_name);
goto search;
@@ -4447,6 +4447,9 @@ Unpickler_init(UnpicklerObject *self, PyObject *args, PyObject *kwds)
if (self->memo == NULL)
return -1;
+ self->last_string = NULL;
+ self->arg = NULL;
+
return 0;
}