History

avfilter/vf_thumbnail_cuda: Fix segfaults on uninit

Uninit crashed if an array containing frames could not be allocated or config_props() has never been called.

Andreas Rheinhardt committed 5 years ago

Commit 06045f41 parent baf89ab1 file · +5 −0Browse files

Unified · Split

libavfilter/vf_thumbnail_cuda.c+5−0
@@ -306,6 +306,8 @@ static av_cold void uninit(AVFilterContext *ctx) · 305 unmodified lines
306306 {
307307 int i;
308308 ThumbnailCudaContext *s = ctx->priv;
309+
310+ if (s->hwctx) {
309311 CudaFunctions *cu = s->hwctx->internal->cuda_dl;
310312
311313 if (s->data) {
@@ -317,10 +319,13 @@ static av_cold void uninit(AVFilterContext *ctx) · 5 unmodified lines
317319 CHECK_CU(cu->cuModuleUnload(s->cu_module));
318320 s->cu_module = NULL;
319321 }
322+ }
320323
324+ if (s->frames) {
321325 for (i = 0; i < s->n_frames && s->frames[i].buf; i++)
322326 av_frame_free(&s->frames[i].buf);
323327 av_freep(&s->frames);
328+ }
324329 }
325330
326331 static int request_frame(AVFilterLink *link)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t