Index: core/stackless_impl.h =================================================================== --- core/stackless_impl.h (revision 54420) +++ core/stackless_impl.h (working copy) @@ -91,6 +91,9 @@ PyObject *retval); PyAPI_FUNC(PyObject *) PyEval_EvalFrame_iter(struct _frame *f, int throwflag, PyObject *retval); +/* not strictly an API function, but needs to be for the purpose of pickling */ +PyAPI_FUNC(PyObject *) channel_seq_callback(struct _frame *f, int throwflag, + PyObject *retval); /* rebirth of software stack avoidance */ Index: pickling/prickelpit.c =================================================================== --- pickling/prickelpit.c (revision 54420) +++ pickling/prickelpit.c (working copy) @@ -719,6 +719,7 @@ DEF_INVALID_EXEC(eval_frame_value) DEF_INVALID_EXEC(eval_frame_noval) DEF_INVALID_EXEC(eval_frame_iter) +DEF_INVALID_EXEC(channel_seq_callback) static PyTypeObject wrap_PyFrame_Type; @@ -1048,6 +1049,8 @@ PyEval_EvalFrame_noval, REF_INVALID_EXEC(eval_frame_noval)) || slp_register_execute(&PyFrame_Type, "eval_frame_iter", PyEval_EvalFrame_iter, REF_INVALID_EXEC(eval_frame_iter)) + || slp_register_execute(&PyCFrame_Type, "channel_seq_callback", + channel_seq_callback, REF_INVALID_EXEC(channel_seq_callback)) || init_type(&wrap_PyFrame_Type, initchain); } #undef initchain