diff options
| -rw-r--r-- | src/rabbit_misc.erl | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl index 759e066bf2..cfabf1ed5e 100644 --- a/src/rabbit_misc.erl +++ b/src/rabbit_misc.erl @@ -893,9 +893,11 @@ pmerge(Key, Val, List) -> %% proplists merge plmerge(P1, P2) -> - K1 = proplists:get_keys(P1), - K2 = proplists:get_keys(P2), - P1 ++ [X || {K, _} = X <- P2, lists:member(K, K2 -- K1)]. + dict:to_list(dict:merge(fun(_, V, _) -> + V + end, + dict:from_list(P1), + dict:from_list(P2))). pset(Key, Value, List) -> [{Key, Value} | proplists:delete(Key, List)]. |
