diff options
author | wm4 <nfxjfg@googlemail.com> | 2017-06-06 18:51:08 +0200 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2017-06-08 20:55:45 +0200 |
commit | bd747b9226414007f0207fa201976af7217e3b77 (patch) | |
tree | 597ef1d89e3f7cfd6b91c989fea616ce127c12e8 /libavcodec/decode.c | |
parent | fff90422d181744cd75dbf011687ee7095f02875 (diff) | |
download | ffmpeg-bd747b9226414007f0207fa201976af7217e3b77.tar.gz |
lavc: set avctx->hwaccel before init
So a hwaccel can access avctx->hwaccel in init for whatever reason. This
is for the new d3d hwaccel API. We could create separate entrypoints for
each of the 3 hwaccel types (dxva2, d3d11va, new d3d11va), but this
seems nicer.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diffstat (limited to 'libavcodec/decode.c')
-rw-r--r-- | libavcodec/decode.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/decode.c b/libavcodec/decode.c index bb58dfc561..ae2c715677 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -746,16 +746,16 @@ static int setup_hwaccel(AVCodecContext *avctx, return AVERROR(ENOMEM); } + avctx->hwaccel = hwa; if (hwa->init) { ret = hwa->init(avctx); if (ret < 0) { av_freep(&avctx->internal->hwaccel_priv_data); + avctx->hwaccel = NULL; return ret; } } - avctx->hwaccel = hwa; - return 0; } |