shithub: dav1d

Download patch

ref: 24108f83816bf06504c2065c93e17da2d134b5a5
parent: f55ac48c3fa5f7b42cfbead6389379ff599740c2
author: Janne Grunau <janne-vlc@jannau.net>
date: Thu Nov 1 09:14:11 EDT 2018

Revert "explicitly clear some Dav1dRef pointers after calling dav1d_ref_dec()"

This reverts commit aeb5a5efc840da40c58d579b4e8792cb911bc6ba.

--- a/src/decode.c
+++ b/src/decode.c
@@ -3018,9 +3018,7 @@
             if (f->cur_segmap_ref)
                 dav1d_ref_inc(f->cur_segmap_ref);
             dav1d_ref_dec(&c->refs[i].refmvs);
-            if (f->frame_hdr.allow_intrabc) {
-                c->refs[i].refmvs = NULL;
-            } else {
+            if (!f->frame_hdr.allow_intrabc) {
                 c->refs[i].refmvs = f->mvs_ref;
                 if (f->mvs_ref)
                     dav1d_ref_inc(f->mvs_ref);
@@ -3040,9 +3038,7 @@
                     if (c->cdf[i].cdf)
                         dav1d_cdf_thread_unref(&c->cdf[i]);
                     dav1d_ref_dec(&c->refs[i].segmap);
-                    c->refs[i].segmap = NULL;
                     dav1d_ref_dec(&c->refs[i].refmvs);
-                    c->refs[i].refmvs = NULL;
                 }
             }
             return res;
--- a/src/obu.c
+++ b/src/obu.c
@@ -1060,9 +1060,7 @@
                 if (c->refs[i].p.p.data[0])
                     dav1d_thread_picture_unref(&c->refs[i].p);
                 dav1d_ref_dec(&c->refs[i].segmap);
-                c->refs[i].segmap = NULL;
                 dav1d_ref_dec(&c->refs[i].refmvs);
-                c->refs[i].refmvs = NULL;
                 if (c->cdf[i].cdf)
                     dav1d_cdf_thread_unref(&c->cdf[i]);
             }
@@ -1189,7 +1187,6 @@
                 if (c->refs[r].segmap)
                     dav1d_ref_inc(c->refs[r].segmap);
                 dav1d_ref_dec(&c->refs[i].refmvs);
-                c->refs[i].refmvs = NULL;
                 c->refs[i].qidx = c->refs[r].qidx;
             }
         }