[Python-3000-checkins] r60746 - python/branches/py3k/Modules/_ctypes/_ctypes.c

thomas.heller python-3000-checkins at python.org
Tue Feb 12 18:44:23 CET 2008


Author: thomas.heller
Date: Tue Feb 12 18:44:23 2008
New Revision: 60746

Modified:
   python/branches/py3k/Modules/_ctypes/_ctypes.c
Log:
Revert the last svnmerge (r60681) from trunk to _ctypes.c, it should
not have been merged as was noticed in the commit message.


Modified: python/branches/py3k/Modules/_ctypes/_ctypes.c
==============================================================================
--- python/branches/py3k/Modules/_ctypes/_ctypes.c	(original)
+++ python/branches/py3k/Modules/_ctypes/_ctypes.c	Tue Feb 12 18:44:23 2008
@@ -4814,48 +4814,11 @@
 static int
 create_comerror(void)
 {
-	PyObject *dict = PyDict_New();
-	PyMethodDef *methods = comerror_methods;
-	PyObject *s;
-	int status;
-
-	if (dict == NULL)
+	PyComError_Type.tp_base = (PyTypeObject*)PyExc_Exception;
+	if (PyType_Ready(&PyComError_Type) < 0)
 		return -1;
-
-	while (methods->ml_name) {
-		/* get a wrapper for the built-in function */
-		PyObject *func = PyCFunction_New(methods, NULL);
-		PyObject *meth;
-		if (func == NULL)
-			goto error;
-		meth = PyMethod_New(func, NULL, ComError);
-		Py_DECREF(func);
-		if (meth == NULL)
-			goto error;
-		PyDict_SetItemString(dict, methods->ml_name, meth);
-		Py_DECREF(meth);
-		++methods;
-	}
-
-	s = PyString_FromString(comerror_doc);
-	if (s == NULL)
-		goto error;
 	ComError = (PyObject*)&PyComError_Type;
-	status = PyDict_SetItemString(dict, "__doc__", s);
-	Py_DECREF(s);
-	if (status == -1)
-		goto error;
-
-	ComError = PyErr_NewException("_ctypes.COMError",
-				      NULL,
-				      dict);
-	if (ComError == NULL)
-		goto error;
-
 	return 0;
-  error:
-	Py_DECREF(dict);
-	return -1;
 }
 
 #endif


More information about the Python-3000-checkins mailing list