diff --git a/mlir/lib/Bindings/Python/IRAttributes.cpp b/mlir/lib/Bindings/Python/IRAttributes.cpp index 7bc21a31c3c84..142b6eca11c43 100644 --- a/mlir/lib/Bindings/Python/IRAttributes.cpp +++ b/mlir/lib/Bindings/Python/IRAttributes.cpp @@ -1468,7 +1468,10 @@ class PyDenseResourceElementsAttribute // The userData is a Py_buffer* that the deleter owns. auto deleter = [](void *userData, const void *data, size_t size, size_t align) { + if (!Py_IsInitialized()) + Py_Initialize(); Py_buffer *ownedView = static_cast(userData); + nb::gil_scoped_acquire gil; PyBuffer_Release(ownedView); delete ownedView; };