From 86a0f370c357d650f42834a5c76fcd090123cd13 Mon Sep 17 00:00:00 2001 From: jp9000 Date: Sat, 14 Mar 2015 06:50:51 -0700 Subject: [PATCH] libobs: Insert new filters at index 0 Technically, the "last" filter rendered is the filter at index 0, so inserting a new filter at that point makes the most sense. --- libobs/obs-source.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/libobs/obs-source.c b/libobs/obs-source.c index f535a23f9..b32d32fd8 100644 --- a/libobs/obs-source.c +++ b/libobs/obs-source.c @@ -1292,15 +1292,11 @@ void obs_source_filter_add(obs_source_t *source, obs_source_t *filter) obs_source_addref(filter); - if (source->filters.num) { - obs_source_t **back = da_end(source->filters); - (*back)->filter_target = filter; - } - filter->filter_parent = source; - filter->filter_target = source; + filter->filter_target = !source->filters.num ? + source : source->filters.array[0]; - da_push_back(source->filters, &filter); + da_insert(source->filters, 0, &filter); pthread_mutex_unlock(&source->filter_mutex);