decoder.c: Remove return after long jump

Bug: aomedia:444707595
Change-Id: If3c5f3bcd16725609298cfebb5e3f6dbac718106
diff --git a/av1/decoder/decoder.c b/av1/decoder/decoder.c
index 0ae0b86..aecad2b 100644
--- a/av1/decoder/decoder.c
+++ b/av1/decoder/decoder.c
@@ -260,16 +260,17 @@
 
   const YV12_BUFFER_CONFIG *const cfg = get_ref_frame(cm, idx);
   if (cfg == NULL) {
-    aom_internal_error(&pbi->error, AOM_CODEC_ERROR, "No reference frame");
-    return AOM_CODEC_ERROR;
+    aom_set_error(&pbi->error, AOM_CODEC_ERROR, "No reference frame");
+    return pbi->error.error_code;
   }
-  if (!equal_dimensions(cfg, sd))
-    aom_internal_error(&pbi->error, AOM_CODEC_ERROR,
-                       "Incorrect buffer dimensions");
-  else
-    aom_yv12_copy_frame(cfg, sd, num_planes);
+  if (!equal_dimensions(cfg, sd)) {
+    aom_set_error(&pbi->error, AOM_CODEC_ERROR, "Incorrect buffer dimensions");
+    return pbi->error.error_code;
+  }
 
-  return pbi->error.error_code;
+  aom_yv12_copy_frame(cfg, sd, num_planes);
+
+  return AOM_CODEC_OK;
 }
 
 static int equal_dimensions_and_border(const YV12_BUFFER_CONFIG *a,
@@ -292,37 +293,35 @@
   ref_buf = get_ref_frame(cm, idx);
 
   if (ref_buf == NULL) {
-    aom_internal_error(cm->error, AOM_CODEC_ERROR, "No reference frame");
-    return AOM_CODEC_ERROR;
+    aom_set_error(cm->error, AOM_CODEC_ERROR, "No reference frame");
+    return cm->error->error_code;
   }
 
   if (!use_external_ref) {
     if (!equal_dimensions(ref_buf, sd)) {
-      aom_internal_error(cm->error, AOM_CODEC_ERROR,
-                         "Incorrect buffer dimensions");
-    } else {
-      // Overwrite the reference frame buffer.
-      aom_yv12_copy_frame(sd, ref_buf, num_planes);
+      aom_set_error(cm->error, AOM_CODEC_ERROR, "Incorrect buffer dimensions");
+      return cm->error->error_code;
     }
+    // Overwrite the reference frame buffer.
+    aom_yv12_copy_frame(sd, ref_buf, num_planes);
   } else {
     if (!equal_dimensions_and_border(ref_buf, sd)) {
-      aom_internal_error(cm->error, AOM_CODEC_ERROR,
-                         "Incorrect buffer dimensions");
-    } else {
-      // Overwrite the reference frame buffer pointers.
-      // Once we no longer need the external reference buffer, these pointers
-      // are restored.
-      ref_buf->store_buf_adr[0] = ref_buf->y_buffer;
-      ref_buf->store_buf_adr[1] = ref_buf->u_buffer;
-      ref_buf->store_buf_adr[2] = ref_buf->v_buffer;
-      ref_buf->y_buffer = sd->y_buffer;
-      ref_buf->u_buffer = sd->u_buffer;
-      ref_buf->v_buffer = sd->v_buffer;
-      ref_buf->use_external_reference_buffers = 1;
+      aom_set_error(cm->error, AOM_CODEC_ERROR, "Incorrect buffer dimensions");
+      return cm->error->error_code;
     }
+    // Overwrite the reference frame buffer pointers.
+    // Once we no longer need the external reference buffer, these pointers
+    // are restored.
+    ref_buf->store_buf_adr[0] = ref_buf->y_buffer;
+    ref_buf->store_buf_adr[1] = ref_buf->u_buffer;
+    ref_buf->store_buf_adr[2] = ref_buf->v_buffer;
+    ref_buf->y_buffer = sd->y_buffer;
+    ref_buf->u_buffer = sd->u_buffer;
+    ref_buf->v_buffer = sd->v_buffer;
+    ref_buf->use_external_reference_buffers = 1;
   }
 
-  return cm->error->error_code;
+  return AOM_CODEC_OK;
 }
 
 aom_codec_err_t av1_copy_new_frame_dec(AV1_COMMON *cm,
@@ -330,13 +329,14 @@
                                        YV12_BUFFER_CONFIG *sd) {
   const int num_planes = av1_num_planes(cm);
 
-  if (!equal_dimensions_and_border(new_frame, sd))
-    aom_internal_error(cm->error, AOM_CODEC_ERROR,
-                       "Incorrect buffer dimensions");
-  else
-    aom_yv12_copy_frame(new_frame, sd, num_planes);
+  if (!equal_dimensions_and_border(new_frame, sd)) {
+    aom_set_error(cm->error, AOM_CODEC_ERROR, "Incorrect buffer dimensions");
+    return cm->error->error_code;
+  }
 
-  return cm->error->error_code;
+  aom_yv12_copy_frame(new_frame, sd, num_planes);
+
+  return AOM_CODEC_OK;
 }
 
 static void release_current_frame(AV1Decoder *pbi) {