lavfi/frei0r: correctly handle paths longer than 1023 chars
[ffmpeg.git] / libavfilter / vf_frei0r.c
index 9928113..2935394 100644 (file)
@@ -236,9 +236,11 @@ static av_cold int frei0r_init(AVFilterContext *ctx,
         av_free(path);
     }
     if (!frei0r->dl_handle && (path = getenv("HOME"))) {
-        char prefix[1024];
-        snprintf(prefix, sizeof(prefix), "%s/.frei0r-1/lib/", path);
+        char *prefix = av_asprintf("%s/.frei0r-1/lib/", path);
+        if (!prefix)
+            return AVERROR(ENOMEM);
         frei0r->dl_handle = load_path(ctx, prefix, dl_name);
+        av_free(prefix);
     }
     if (!frei0r->dl_handle)
         frei0r->dl_handle = load_path(ctx, "/usr/local/lib/frei0r-1/", dl_name);