diff options
| author | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2011-01-08 00:17:56 +0000 |
|---|---|---|
| committer | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2011-01-08 01:24:16 +0000 |
| commit | 9deb16484dee86d94b2ab75868410b360e9e6d5d (patch) | |
| tree | bd8ffa9083db40324d5515f4ebbd63378cb90c92 /psycopg/psycopgmodule.c | |
| parent | b8c8cddc2d885921c8ec067615707a187f7f9032 (diff) | |
| download | psycopg2-9deb16484dee86d94b2ab75868410b360e9e6d5d.tar.gz | |
Don't define a CObject API in Python 3.2
The API is not available: a PyCapsule should be used. Nobody seems
needing it for now.
Diffstat (limited to 'psycopg/psycopgmodule.c')
| -rw-r--r-- | psycopg/psycopgmodule.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/psycopg/psycopgmodule.c b/psycopg/psycopgmodule.c index d580fa0..f91483d 100644 --- a/psycopg/psycopgmodule.c +++ b/psycopg/psycopgmodule.c @@ -760,10 +760,12 @@ static struct PyModuleDef psycopgmodule = { PyMODINIT_FUNC INIT_MODULE(_psycopg)(void) { +#if PY_VERSION_HEX < 0x03020000 static void *PSYCOPG_API[PSYCOPG_API_pointers]; + PyObject *c_api_object; +#endif PyObject *module = NULL, *dict; - PyObject *c_api_object; #ifdef PSYCOPG_DEBUG if (getenv("PSYCOPG_DEBUG")) @@ -861,9 +863,12 @@ INIT_MODULE(_psycopg)(void) /* PyBoxer_API[PyBoxer_Fake_NUM] = (void *)PyBoxer_Fake; */ /* Create a CObject containing the API pointer array's address */ + /* If anybody asks for a PyCapsule we'll deal with it. */ +#if PY_VERSION_HEX < 0x03020000 c_api_object = PyCObject_FromVoidPtr((void *)PSYCOPG_API, NULL); if (c_api_object != NULL) PyModule_AddObject(module, "_C_API", c_api_object); +#endif /* other mixed initializations of module-level variables */ psycoEncodings = PyDict_New(); |
