diff options
| author | Rusty Wagner <rusty.wagner@gmail.com> | 2023-01-31 21:45:23 -0500 |
|---|---|---|
| committer | Alexander Taylor <alex@vector35.com> | 2023-02-08 11:53:38 -0500 |
| commit | c2247a35e97c96eba9cd4caf09b32b038625cc31 (patch) | |
| tree | d88022f286bd811667f88cc3926dada7b4ec5d31 /transform.cpp | |
| parent | 0b752f36c9d3b6bcb51a05fdcf5b38633d38bdbd (diff) | |
Clean up possible early deletion issues in API callbacks
Diffstat (limited to 'transform.cpp')
| -rw-r--r-- | transform.cpp | 6 |
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; |
