summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Almer <[email protected]>2025-07-19 20:00:28 -0300
committerJames Almer <[email protected]>2025-07-19 20:01:57 -0300
commit85ac5892116e70ef01c7cb27f6813ac843d2a977 (patch)
tree10d64de1170bb390d586363d6aa728091bd98e70
parent722a2170e83231283fc74bede495b3b4ee9591ac (diff)
avformat/apv: use memset to zero initialize frame_info
Don't rely on implicit zeroing. Should fix fate failures on msvc targets. Found-by: Kacper Michajlow <[email protected]> Signed-off-by: James Almer <[email protected]>
-rw-r--r--libavformat/apv.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/libavformat/apv.c b/libavformat/apv.c
index 432d57318d..bc8f9e9498 100644
--- a/libavformat/apv.c
+++ b/libavformat/apv.c
@@ -252,7 +252,7 @@ static int apv_add_frameinfo(APVDecoderConfigurationEntry *configuration_entry,
int ff_isom_parse_apvc(APVDecoderConfigurationRecord *apvc,
const AVPacket *pkt, void *logctx)
{
- APVDecoderFrameInfo frame_info = { .capture_time_distance_ignored = 1 };
+ APVDecoderFrameInfo frame_info;
int ret;
if (pkt->size < 8 || AV_RB32(pkt->data) != APV_SIGNATURE)
@@ -265,6 +265,9 @@ int ff_isom_parse_apvc(APVDecoderConfigurationRecord *apvc,
return ret;
}
+ memset(&frame_info, 0, sizeof(frame_info));
+ frame_info.capture_time_distance_ignored = 1;
+
for (int i = 0; i < apvc->frag.nb_units; i++) {
const CodedBitstreamUnit *pbu = &apvc->frag.units[i];
int j;
@@ -304,6 +307,11 @@ int ff_isom_parse_apvc(APVDecoderConfigurationRecord *apvc,
frame_info.transfer_characteristics = header->transfer_characteristics;
frame_info.matrix_coefficients = header->matrix_coefficients;
frame_info.full_range_flag = header->full_range_flag;
+ } else {
+ frame_info.color_primaries =
+ frame_info.transfer_characteristics =
+ frame_info.matrix_coefficients =
+ frame_info.full_range_flag = 0;
}
for (j = 0; j < apvc->number_of_configuration_entry; j++) {