Commit ead0dd3c authored by Marton Balint's avatar Marton Balint

lavfi/frei0r: factorize plugin loading with static path

Reviewed-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
Signed-off-by: 's avatarMarton Balint <cus@passwd.hu>
parent 35ead1f2
......@@ -29,6 +29,7 @@
#include <stdlib.h>
#include "config.h"
#include "libavutil/avstring.h"
#include "libavutil/common.h"
#include "libavutil/imgutils.h"
#include "libavutil/internal.h"
#include "libavutil/mathematics.h"
......@@ -231,6 +232,13 @@ static av_cold int frei0r_init(AVFilterContext *ctx,
f0r_plugin_info_t *pi;
char *path;
int ret = 0;
int i;
static const char* const frei0r_pathlist[] = {
"/usr/local/lib/frei0r-1/",
"/usr/lib/frei0r-1/",
"/usr/local/lib64/frei0r-1/",
"/usr/lib64/frei0r-1/"
};
if (!dl_name) {
av_log(ctx, AV_LOG_ERROR, "No filter name provided.\n");
......@@ -274,23 +282,8 @@ static av_cold int frei0r_init(AVFilterContext *ctx,
if (ret < 0)
return ret;
}
if (!s->dl_handle) {
ret = load_path(ctx, &s->dl_handle, "/usr/local/lib/frei0r-1/", dl_name);
if (ret < 0)
return ret;
}
if (!s->dl_handle) {
ret = load_path(ctx, &s->dl_handle, "/usr/lib/frei0r-1/", dl_name);
if (ret < 0)
return ret;
}
if (!s->dl_handle) {
ret = load_path(ctx, &s->dl_handle, "/usr/local/lib64/frei0r-1/", dl_name);
if (ret < 0)
return ret;
}
if (!s->dl_handle) {
ret = load_path(ctx, &s->dl_handle, "/usr/lib64/frei0r-1/", dl_name);
for (i = 0; !s->dl_handle && i < FF_ARRAY_ELEMS(frei0r_pathlist); i++) {
ret = load_path(ctx, &s->dl_handle, frei0r_pathlist[i], dl_name);
if (ret < 0)
return ret;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment