Import a pointer to a C object from a capsule attribute in a module. The
*name* parameter should specify the full name to the attribute, as in
``module.attribute``. The *name* stored in the capsule must match this
- string exactly. If *no_block* is true, import the module without blocking
- (using :c:func:`PyImport_ImportModuleNoBlock`). If *no_block* is false,
- import the module conventionally (using :c:func:`PyImport_ImportModule`).
+ string exactly.
Return the capsule's internal *pointer* on success. On failure, set an
exception and return ``NULL``.
+ .. versionchanged:: 3.3
+ *no_block* has no effect anymore.
+
.. c:function:: int PyCapsule_IsValid(PyObject *capsule, const char *name)
}
if (object == NULL) {
- if (no_block) {
- object = PyImport_ImportModule(trace);
- } else {
- object = PyImport_ImportModule(trace);
- if (!object) {
- PyErr_Format(PyExc_ImportError, "PyCapsule_Import could not import module \"%s\"", trace);
- }
+ object = PyImport_ImportModule(trace);
+ if (!object) {
+ PyErr_Format(PyExc_ImportError, "PyCapsule_Import could not import module \"%s\"", trace);
}
} else {
PyObject *object2 = PyObject_GetAttrString(object, trace);