From 9be7be21967b4a68257ef5e3a8e931ab669b87df Mon Sep 17 00:00:00 2001 From: "feliks.pobiedzinski@swmansion.com" Date: Fri, 20 Oct 2023 17:13:19 +0200 Subject: [PATCH] Fix bugs wip --- .../core/element/demand_controller/auto_flow_utils.ex | 4 ++-- lib/membrane/core/element/effective_flow_controller.ex | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/membrane/core/element/demand_controller/auto_flow_utils.ex b/lib/membrane/core/element/demand_controller/auto_flow_utils.ex index 8af904e18..93979661c 100644 --- a/lib/membrane/core/element/demand_controller/auto_flow_utils.ex +++ b/lib/membrane/core/element/demand_controller/auto_flow_utils.ex @@ -152,7 +152,7 @@ defmodule Membrane.Core.Element.DemandController.AutoFlowUtils do pad_to_queue_map = pad_ref_list |> Enum.filter(&hard_corcked?(&1, state)) - |> Map.new(&PadModel.get_data!(state, &1, [:auto_flow_queue])) + |> Map.new(&{&1, PadModel.get_data!(state, &1, :auto_flow_queue)}) state = handle_queued_items(pad_to_queue_map, state) @@ -176,7 +176,7 @@ defmodule Membrane.Core.Element.DemandController.AutoFlowUtils do {:empty, _empty_queue} -> pad_to_queue_map - |> Map.pop(pad_ref) + |> Map.delete(pad_ref) |> handle_queued_items(state) end end diff --git a/lib/membrane/core/element/effective_flow_controller.ex b/lib/membrane/core/element/effective_flow_controller.ex index 5a8729846..68ec75e63 100644 --- a/lib/membrane/core/element/effective_flow_controller.ex +++ b/lib/membrane/core/element/effective_flow_controller.ex @@ -132,9 +132,9 @@ defmodule Membrane.Core.Element.EffectiveFlowController do end) state.pads_data - |> Enum.filter(fn - {_pad_ref, %{direction: :input, flow_contorl: :auto}} -> true - _other -> false + |> Enum.flat_map(fn + {pad_ref, %{direction: :input, flow_control: :auto}} -> [pad_ref] + _other -> [] end) |> AutoFlowUtils.auto_adjust_atomic_demand(state) end