Commit 36d919cd32 for aom
commit 36d919cd32766f8fefae7abf5c754d883d7b2ab4
Author: James Zern <jzern@google.com>
Date: Fri Dec 19 14:59:56 2025 -0800
ctrl_set_svc_params: add missing setjmp
`av1_init_layer_context()` may call `aom_internal_error` on error.
Bug: 42302297
Change-Id: I8b98f6e301599e02ed500c7de24435c4a4dfd7d1
diff --git a/av1/av1_cx_iface.c b/av1/av1_cx_iface.c
index b2e03faac4..3210f77399 100644
--- a/av1/av1_cx_iface.c
+++ b/av1/av1_cx_iface.c
@@ -4092,7 +4092,14 @@ static aom_codec_err_t ctrl_set_svc_params(aom_codec_alg_priv_t *ctx,
seq_params->operating_points_cnt_minus_1 =
ppi->number_spatial_layers * ppi->number_temporal_layers - 1;
+ struct aom_internal_error_info *const error = cpi->common.error;
+ if (setjmp(error->jmp)) {
+ error->setjmp = 0;
+ return error->error_code;
+ }
+ error->setjmp = 1;
av1_init_layer_context(cpi);
+ error->setjmp = 0;
// update_encoder_cfg() is somewhat costly and this control may be called
// multiple times, so update_encoder_cfg() is only called to ensure frame
// and superblock sizes are updated before they're fixed by the first