summaryrefslogtreecommitdiff
path: root/transform.cpp
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2023-01-31 21:45:23 -0500
committerAlexander Taylor <alex@vector35.com>2023-02-08 11:53:38 -0500
commitc2247a35e97c96eba9cd4caf09b32b038625cc31 (patch)
treed88022f286bd811667f88cc3926dada7b4ec5d31 /transform.cpp
parent0b752f36c9d3b6bcb51a05fdcf5b38633d38bdbd (diff)
Clean up possible early deletion issues in API callbacks
Diffstat (limited to 'transform.cpp')
-rw-r--r--transform.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/transform.cpp b/transform.cpp
index d9548689..fb5c568b 100644
--- a/transform.cpp
+++ b/transform.cpp
@@ -39,7 +39,7 @@ Transform::Transform(BNTransformType type, const string& name, const string& lon
BNTransformParameterInfo* Transform::GetParametersCallback(void* ctxt, size_t* count)
{
- Transform* xform = (Transform*)ctxt;
+ CallbackRef<Transform> xform(ctxt);
vector<TransformParameter> params = xform->GetParameters();
*count = params.size();
BNTransformParameterInfo* result = new BNTransformParameterInfo[params.size()];
@@ -76,7 +76,7 @@ bool Transform::DecodeCallback(
DataBuffer inputBuf(BNDuplicateDataBuffer(input));
DataBuffer outputBuf;
- Transform* xform = (Transform*)ctxt;
+ CallbackRef<Transform> xform(ctxt);
bool result = xform->Decode(inputBuf, outputBuf, paramMap);
BNAssignDataBuffer(output, outputBuf.GetBufferObject());
return result;
@@ -93,7 +93,7 @@ bool Transform::EncodeCallback(
DataBuffer inputBuf(BNDuplicateDataBuffer(input));
DataBuffer outputBuf;
- Transform* xform = (Transform*)ctxt;
+ CallbackRef<Transform> xform(ctxt);
bool result = xform->Encode(inputBuf, outputBuf, paramMap);
BNAssignDataBuffer(output, outputBuf.GetBufferObject());
return result;