From 80ea2e62f7e59e87607f10fce58a70e3adfa7623 Mon Sep 17 00:00:00 2001 From: Andrew Mayorov Date: Thu, 13 Jun 2024 14:50:43 +0200 Subject: [PATCH] fix(stream): ensure that `chain/1` preserves the order --- apps/emqx_utils/src/emqx_utils_stream.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/emqx_utils/src/emqx_utils_stream.erl b/apps/emqx_utils/src/emqx_utils_stream.erl index 510b3e377..bab09b6b3 100644 --- a/apps/emqx_utils/src/emqx_utils_stream.erl +++ b/apps/emqx_utils/src/emqx_utils_stream.erl @@ -190,7 +190,7 @@ transpose_tail(S, Tail) -> %% @doc Make a stream by concatenating multiple streams. -spec chain([stream(X)]) -> stream(X). chain(L) -> - lists:foldl(fun chain/2, empty(), L). + lists:foldr(fun chain/2, empty(), L). %% @doc Make a stream by chaining (concatenating) two streams. %% The second stream begins to produce values only after the first one is exhausted.