made cPickle fall back to the copy_reg/reduce protocol,
if a function cannot be stored as global.
This is for compatibility with pickle.py .
diff --git a/Modules/cPickle.c b/Modules/cPickle.c
index 4961c3b..105a2e9 100644
--- a/Modules/cPickle.c
+++ b/Modules/cPickle.c
@@ -2418,6 +2418,11 @@
         case 'f':
 		if (type == &PyFunction_Type) {
 			res = save_global(self, args, NULL);
+			if (res && PyErr_ExceptionMatches(PickleError)) {
+				/* fall back to reduce */
+				PyErr_Clear();
+				break;
+			}
 			goto finally;
 		}
 		break;