diff options
author | James Almer <[email protected]> | 2025-07-19 20:00:28 -0300 |
---|---|---|
committer | James Almer <[email protected]> | 2025-07-19 20:01:57 -0300 |
commit | 85ac5892116e70ef01c7cb27f6813ac843d2a977 (patch) | |
tree | 10d64de1170bb390d586363d6aa728091bd98e70 | |
parent | 722a2170e83231283fc74bede495b3b4ee9591ac (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.c | 10 |
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++) { |