avfilter/vf_v360: handle gracefully invalid values for rorder option

This commit is contained in:
Paul B Mahol 2020-02-25 11:12:02 +01:00
parent 177c68e349
commit 08a21c1fd8
1 changed files with 12 additions and 6 deletions

View File

@ -3271,16 +3271,22 @@ static int config_output(AVFilterLink *outlink)
int rorder;
if (c == '\0') {
av_log(ctx, AV_LOG_ERROR,
"Incomplete rorder option. Direction for all 3 rotation orders should be specified.\n");
return AVERROR(EINVAL);
av_log(ctx, AV_LOG_WARNING,
"Incomplete rorder option. Direction for all 3 rotation orders should be specified. Switching to default rorder.\n");
s->rotation_order[0] = YAW;
s->rotation_order[1] = PITCH;
s->rotation_order[2] = ROLL;
break;
}
rorder = get_rorder(c);
if (rorder == -1) {
av_log(ctx, AV_LOG_ERROR,
"Incorrect rotation order symbol '%c' in rorder option.\n", c);
return AVERROR(EINVAL);
av_log(ctx, AV_LOG_WARNING,
"Incorrect rotation order symbol '%c' in rorder option. Switching to default rorder.\n", c);
s->rotation_order[0] = YAW;
s->rotation_order[1] = PITCH;
s->rotation_order[2] = ROLL;
break;
}
s->rotation_order[order] = rorder;