From 0483596da19d1ccc8d221acd8e9e6b98e7a6134f Mon Sep 17 00:00:00 2001 From: Lasse Blaauwbroek Date: Fri, 9 Jun 2023 22:01:32 +0200 Subject: [PATCH] Miscellaneous --- capnp/helpers/capabilityHelper.cpp | 7 ------- capnp/includes/capnp_cpp.pxd | 2 +- capnp/lib/capnp.pyx | 4 ++-- 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/capnp/helpers/capabilityHelper.cpp b/capnp/helpers/capabilityHelper.cpp index 30cfd29..fda7560 100644 --- a/capnp/helpers/capabilityHelper.cpp +++ b/capnp/helpers/capabilityHelper.cpp @@ -65,13 +65,6 @@ kj::Promise> wrapPyFunc(kj::Own func, kj::Ow return stealPyRef(result); } -kj::Promise> wrapPyFuncNoArg(kj::Own func) { - GILAcquire gil; - PyObject * result = PyObject_CallFunctionObjArgs(func->obj, NULL); - check_py_error(); - return stealPyRef(result); -} - ::kj::Promise> then(kj::Promise> promise, kj::Own func, kj::Own error_func) { if(error_func->obj == Py_None) diff --git a/capnp/includes/capnp_cpp.pxd b/capnp/includes/capnp_cpp.pxd index e3a822d..a34967c 100644 --- a/capnp/includes/capnp_cpp.pxd +++ b/capnp/includes/capnp_cpp.pxd @@ -492,7 +492,7 @@ cdef extern from "kj/async.h" namespace " ::kj": cdef extern from "capnp/helpers/capabilityHelper.h": cdef cppclass PyAsyncIoStream(AsyncIoStream): - PyAsyncIoStream(PyObject* thisptr) + PyAsyncIoStream(Own[PyRefCounter] thisptr) void rejectDisconnected[T](PromiseFulfiller[T]& fulfiller, StringPtr message) void rejectVoidDisconnected(VoidPromiseFulfiller& fulfiller, StringPtr message) Exception makeException(StringPtr message) diff --git a/capnp/lib/capnp.pyx b/capnp/lib/capnp.pyx index 73ac651..0de1829 100644 --- a/capnp/lib/capnp.pyx +++ b/capnp/lib/capnp.pyx @@ -1266,7 +1266,7 @@ cdef class _DynamicStructBuilder: """ self._check_write() await _voidpromise_to_asyncio( - writeMessage(deref(stream.thisptr.get()), deref((<_MessageBuilder>self._parent).thisptr))) + writeMessage(deref(stream.thisptr), deref((<_MessageBuilder>self._parent).thisptr))) self._is_written = True def write_packed(self, file): @@ -3033,7 +3033,7 @@ class _StructModule(object): :rtype: :class:`_DynamicStructReader`""" cdef schema_cpp.ReaderOptions opts = make_reader_opts(traversal_limit_in_words, nesting_limit) - reader = await _promise_to_asyncio(tryReadMessage(deref(stream.thisptr.get()), opts)) + reader = await _promise_to_asyncio(tryReadMessage(deref(stream.thisptr), opts)) if reader is None: return return reader.get_root(self.schema)