Merge pull request #55 from JohnEmhoff/develop
Fix destructor order for _MessageReader
This commit is contained in:
@@ -3229,8 +3229,7 @@ cdef class _MessageReader:
|
|||||||
"""
|
"""
|
||||||
cdef public object _parent
|
cdef public object _parent
|
||||||
cdef schema_cpp.MessageReader * thisptr
|
cdef schema_cpp.MessageReader * thisptr
|
||||||
def __dealloc__(self):
|
|
||||||
del self.thisptr
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
raise NotImplementedError("This is an abstract base class")
|
raise NotImplementedError("This is an abstract base class")
|
||||||
|
|
||||||
@@ -3290,6 +3289,10 @@ cdef class _StreamFdMessageReader(_MessageReader):
|
|||||||
|
|
||||||
self.thisptr = new schema_cpp.StreamFdMessageReader(fd, opts)
|
self.thisptr = new schema_cpp.StreamFdMessageReader(fd, opts)
|
||||||
|
|
||||||
|
def __dealloc__(self):
|
||||||
|
del self.thisptr
|
||||||
|
|
||||||
|
|
||||||
cdef class _PackedMessageReader(_MessageReader):
|
cdef class _PackedMessageReader(_MessageReader):
|
||||||
"""Read a Cap'n Proto message from a file descriptor in a packed manner
|
"""Read a Cap'n Proto message from a file descriptor in a packed manner
|
||||||
|
|
||||||
@@ -3318,6 +3321,10 @@ cdef class _PackedMessageReader(_MessageReader):
|
|||||||
self.thisptr = new schema_cpp.PackedMessageReader(stream, opts)
|
self.thisptr = new schema_cpp.PackedMessageReader(stream, opts)
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
def __dealloc__(self):
|
||||||
|
del self.thisptr
|
||||||
|
|
||||||
|
|
||||||
cdef class _PackedMessageReaderBytes(_MessageReader):
|
cdef class _PackedMessageReaderBytes(_MessageReader):
|
||||||
cdef schema_cpp.ArrayInputStream * stream
|
cdef schema_cpp.ArrayInputStream * stream
|
||||||
|
|
||||||
@@ -3340,6 +3347,7 @@ cdef class _PackedMessageReaderBytes(_MessageReader):
|
|||||||
self.thisptr = new schema_cpp.PackedMessageReader(deref(self.stream), opts)
|
self.thisptr = new schema_cpp.PackedMessageReader(deref(self.stream), opts)
|
||||||
|
|
||||||
def __dealloc__(self):
|
def __dealloc__(self):
|
||||||
|
del self.thisptr
|
||||||
del self.stream
|
del self.stream
|
||||||
|
|
||||||
cdef class _InputMessageReader(_MessageReader):
|
cdef class _InputMessageReader(_MessageReader):
|
||||||
@@ -3370,6 +3378,10 @@ cdef class _InputMessageReader(_MessageReader):
|
|||||||
self.thisptr = new schema_cpp.InputStreamMessageReader(stream, opts)
|
self.thisptr = new schema_cpp.InputStreamMessageReader(stream, opts)
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
def __dealloc__(self):
|
||||||
|
del self.thisptr
|
||||||
|
|
||||||
|
|
||||||
cdef class _PackedFdMessageReader(_MessageReader):
|
cdef class _PackedFdMessageReader(_MessageReader):
|
||||||
"""Read a Cap'n Proto message from a file descriptor in a packed manner
|
"""Read a Cap'n Proto message from a file descriptor in a packed manner
|
||||||
|
|
||||||
@@ -3392,6 +3404,10 @@ cdef class _PackedFdMessageReader(_MessageReader):
|
|||||||
|
|
||||||
self.thisptr = new schema_cpp.PackedFdMessageReader(fd, opts)
|
self.thisptr = new schema_cpp.PackedFdMessageReader(fd, opts)
|
||||||
|
|
||||||
|
def __dealloc__(self):
|
||||||
|
del self.thisptr
|
||||||
|
|
||||||
|
|
||||||
cdef class _MultipleMessageReader:
|
cdef class _MultipleMessageReader:
|
||||||
cdef schema_cpp.FdInputStream * stream
|
cdef schema_cpp.FdInputStream * stream
|
||||||
cdef schema_cpp.BufferedInputStream * buffered_stream
|
cdef schema_cpp.BufferedInputStream * buffered_stream
|
||||||
@@ -3574,6 +3590,10 @@ cdef class _FlatArrayMessageReader(_MessageReader):
|
|||||||
|
|
||||||
self.thisptr = new schema_cpp.FlatArrayMessageReader(schema_cpp.WordArrayPtr(<schema_cpp.word*>ptr, sz//8))
|
self.thisptr = new schema_cpp.FlatArrayMessageReader(schema_cpp.WordArrayPtr(<schema_cpp.word*>ptr, sz//8))
|
||||||
|
|
||||||
|
def __dealloc__(self):
|
||||||
|
del self.thisptr
|
||||||
|
|
||||||
|
|
||||||
@cython.internal
|
@cython.internal
|
||||||
cdef class _FlatMessageBuilder(_MessageBuilder):
|
cdef class _FlatMessageBuilder(_MessageBuilder):
|
||||||
cdef object _object_to_pin
|
cdef object _object_to_pin
|
||||||
|
|||||||
Reference in New Issue
Block a user