f_lavfi: don't propagate filter failure if creation fails

Filters that fail to create are not supposed to do this. Generally it
should happen in process() only.

This fixes the previous commit. If a filter could not be created, it
"trashed" the wrapper filter with the failure. (Even if the wrapper were
to handle were to handle failures of sub-filter, it couldn't handle init
failure because it cannot call mp_filter_set_error_handler() before the
newly created filter is actually returned.)

Fixes: #7465 (attempt 2)
This commit is contained in:
wm4 2020-02-16 16:21:03 +01:00
parent a19d918816
commit a4b12c54b6
1 changed files with 0 additions and 3 deletions

View File

@ -304,7 +304,6 @@ static void precreate_graph(struct lavfi *c, bool first_init)
error: error:
free_graph(c); free_graph(c);
c->failed = true; c->failed = true;
mp_filter_internal_mark_failed(c->f);
return; return;
} }
@ -518,7 +517,6 @@ static bool init_pads(struct lavfi *c)
error: error:
MP_FATAL(c, "could not initialize filter pads\n"); MP_FATAL(c, "could not initialize filter pads\n");
c->failed = true; c->failed = true;
mp_filter_internal_mark_failed(c->f);
return false; return false;
} }
@ -556,7 +554,6 @@ static void init_graph(struct lavfi *c)
MP_FATAL(c, "failed to configure the filter graph\n"); MP_FATAL(c, "failed to configure the filter graph\n");
free_graph(c); free_graph(c);
c->failed = true; c->failed = true;
mp_filter_internal_mark_failed(c->f);
return; return;
} }