1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

avcodec/nvdec: More effort to make vp8 compile with gcc < 4.6

I'm told my prefix work-around wasn't enough to make it compile,
although I'm not sure why; I did some basic testing and that
approach appeared to work, but I'm not in a position to do a
full compile on CentOS 6 so I can't be sure of anything.

I have had it confirmed that the additional change to not use
named initialisers is enough to make it compile, so let's
throw that into the mix too.
This commit is contained in:
Philip Langdale 2017-11-26 22:18:22 -08:00
parent b93d96a07b
commit 0e93694e64

View File

@ -65,20 +65,19 @@ static int nvdec_vp8_start_frame(AVCodecContext *avctx, const uint8_t *buffer, u
.GoldenRefIdx = safe_get_ref_idx(h->framep[VP56_FRAME_GOLDEN]),
.AltRefIdx = safe_get_ref_idx(h->framep[VP56_FRAME_GOLDEN2]),
/*
* Explicit braces for anonymous inners to work around limitations
* in ancient versions of gcc.
* Explicit braces for anonymous inners and unnamed fields
* to work around limitations in ancient versions of gcc.
*/
{
{
.frame_type = !h->keyframe,
.version = h->profile,
.show_frame = !h->invisible,
.update_mb_segmentation_data = h->segmentation.enabled ?
h->segmentation.update_feature_data :
0,
{ // union
{ // struct
!h->keyframe, // frame_type
h->profile, // version
!h->invisible, // show_frame
h->segmentation.enabled ? // update_mb_segmentation_data
h->segmentation.update_feature_data : 0,
}
}
}
}
};
return 0;