mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
asrc_abuffer: pass non-const string to strtok_r in init()
Fix GCC warning: asrc_abuffer.c: In function ‘init’: asrc_abuffer.c:258: warning: passing argument 1 of ‘strtok_r’ discards qualifiers from pointer target type
This commit is contained in:
parent
587c8ab912
commit
c5d9bd1938
@ -249,10 +249,11 @@ int av_asrc_buffer_add_buffer(AVFilterContext *ctx,
|
||||
pts, flags);
|
||||
}
|
||||
|
||||
static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque)
|
||||
static av_cold int init(AVFilterContext *ctx, const char *args0, void *opaque)
|
||||
{
|
||||
ABufferSourceContext *abuffer = ctx->priv;
|
||||
char *arg = NULL, *ptr, chlayout_str[16];
|
||||
char *args = av_strdup(args0);
|
||||
int ret;
|
||||
|
||||
arg = strtok_r(args, ":", &ptr);
|
||||
@ -260,8 +261,10 @@ static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque)
|
||||
#define ADD_FORMAT(fmt_name) \
|
||||
if (!arg) \
|
||||
goto arg_fail; \
|
||||
if ((ret = ff_parse_##fmt_name(&abuffer->fmt_name, arg, ctx)) < 0) \
|
||||
if ((ret = ff_parse_##fmt_name(&abuffer->fmt_name, arg, ctx)) < 0) { \
|
||||
av_freep(&args); \
|
||||
return ret; \
|
||||
} \
|
||||
if (*args) \
|
||||
arg = strtok_r(NULL, ":", &ptr)
|
||||
|
||||
@ -281,12 +284,14 @@ static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque)
|
||||
av_log(ctx, AV_LOG_INFO, "format:%s layout:%s rate:%d\n",
|
||||
av_get_sample_fmt_name(abuffer->sample_format), chlayout_str,
|
||||
abuffer->sample_rate);
|
||||
av_freep(&args);
|
||||
|
||||
return 0;
|
||||
|
||||
arg_fail:
|
||||
av_log(ctx, AV_LOG_ERROR, "Invalid arguments, must be of the form "
|
||||
"sample_rate:sample_fmt:channel_layout:packing\n");
|
||||
av_freep(&args);
|
||||
return AVERROR(EINVAL);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user