diff --git a/src/calibre/utils/cpp_binding.h b/src/calibre/utils/cpp_binding.h index 58b130a1bb..31bbc1dcd5 100644 --- a/src/calibre/utils/cpp_binding.h +++ b/src/calibre/utils/cpp_binding.h @@ -32,8 +32,9 @@ class generic_raii { void release() noexcept { if (handle != null) { - free_T(handle); + T temp = handle; handle = null; + free_T(temp); } }