Commit 0772967e by Wenzel Jakob

allow nullptr when passing void* values

parent de1bca86
......@@ -328,6 +328,10 @@ public:
using type_caster<void_type>::cast;
bool load(handle h, bool) {
if (h.ptr() == Py_None) {
value = nullptr;
return true;
}
capsule c(h, true);
if (!c.check())
return false;
......@@ -336,8 +340,12 @@ public:
}
static handle cast(void *ptr, return_value_policy /* policy */, handle /* parent */) {
return capsule(ptr).inc_ref();
if (ptr)
return capsule(ptr).release();
else
return handle(Py_None).inc_ref();
}
operator void *() { return value; }
private:
void *value;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment