shithub: libvpx

Download patch

ref: d1e872e1b919759f52f9772fef5a41313aa1b1e8
parent: 8a30a2a4501a9e5c569d948d7f673dba69c9c944
author: Johann <johannkoenig@google.com>
date: Tue Dec 17 06:44:26 EST 2019

vp8: move error check earlier

This avoids assigning variables which will not be used. A
similar change was made to vpx_dsp/bitreader.c a long time
ago.

Change-Id: Ia5012091b8d85ca9bfefc7735a2aa69c5c2bf516

--- a/vp8/decoder/dboolhuff.c
+++ b/vp8/decoder/dboolhuff.c
@@ -15,6 +15,8 @@
 int vp8dx_start_decode(BOOL_DECODER *br, const unsigned char *source,
                        unsigned int source_sz, vpx_decrypt_cb decrypt_cb,
                        void *decrypt_state) {
+  if (source_sz && !source) return 1;
+
   // To simplify calling code this fuction can be called with |source| == null
   // and |source_sz| == 0. This and vp8dx_bool_decoder_fill() are essentially
   // no-ops in this case.
@@ -26,8 +28,6 @@
   br->range = 255;
   br->decrypt_cb = decrypt_cb;
   br->decrypt_state = decrypt_state;
-
-  if (source_sz && !source) return 1;
 
   /* Populate the buffer */
   vp8dx_bool_decoder_fill(br);