File tree Expand file tree Collapse file tree 1 file changed +5
-2
lines changed Expand file tree Collapse file tree 1 file changed +5
-2
lines changed Original file line number Diff line number Diff line change @@ -154,8 +154,10 @@ cdef void _pycapsule_versioned_deleter(object dlt_capsule) noexcept:
154
154
155
155
cdef void _managed_tensor_versioned_deleter(DLManagedTensorVersioned * dlmv_tensor) noexcept with gil:
156
156
if dlmv_tensor is not NULL :
157
+ # we only delete shape, because we make single allocation to
158
+ # acommodate both shape and strides if strides are needed
157
159
stdlib.free(dlmv_tensor.dl_tensor.shape)
158
- cpython.Py_DECREF(< usm_ndarray > dlmv_tensor.manager_ctx)
160
+ cpython.Py_DECREF(< object > dlmv_tensor.manager_ctx)
159
161
dlmv_tensor.manager_ctx = NULL
160
162
stdlib.free(dlmv_tensor)
161
163
@@ -535,14 +537,15 @@ cdef class _DLManagedTensorVersionedOwner:
535
537
Helper class managing the lifetime of the DLManagedTensorVersioned
536
538
struct transferred from a 'dlpack_versioned' capsule.
537
539
"""
538
- cdef DLManagedTensorVersioned * dlmv_tensor
540
+ cdef DLManagedTensorVersioned * dlmv_tensor
539
541
540
542
def __cinit__ (self ):
541
543
self .dlmv_tensor = NULL
542
544
543
545
def __dealloc__ (self ):
544
546
if self .dlmv_tensor:
545
547
self .dlmv_tensor.deleter(self .dlmv_tensor)
548
+ self .dlmv_tensor = NULL
546
549
547
550
@staticmethod
548
551
cdef _DLManagedTensorVersionedOwner _create(DLManagedTensorVersioned * dlmv_tensor_src):
You can’t perform that action at this time.
0 commit comments