Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/videolan/dav1d.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Gramner <gramner@twoorioles.com>2022-04-28 14:24:56 +0300
committerHenrik Gramner <henrik@gramner.com>2022-04-28 14:24:56 +0300
commit6d0d066654d43d5eeffce958604c72d0c9cfbeed (patch)
tree58f351542b3469cb6561beed6cac1019e6faf628
parent8bb0655895f9457ab5157f92adf311d9bd5e2801 (diff)
Remove redundant code in dav1d_cdf_thread_unref()
Checking if the Dav1dRef pointer is non-zero and zeroing it is already performed in dav1d_ref_dec(), no need to do it twice. Also reorder code to enable tail call elimination.
-rw-r--r--src/cdf.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/cdf.c b/src/cdf.c
index 8ac87fe..e0f2132 100644
--- a/src/cdf.c
+++ b/src/cdf.c
@@ -4118,7 +4118,6 @@ void dav1d_cdf_thread_ref(CdfThreadContext *const dst,
}
void dav1d_cdf_thread_unref(CdfThreadContext *const cdf) {
- if (cdf->ref)
- dav1d_ref_dec(&cdf->ref);
- memset(cdf, 0, sizeof(*cdf));
+ memset(&cdf->data, 0, sizeof(*cdf) - offsetof(CdfThreadContext, data));
+ dav1d_ref_dec(&cdf->ref);
}