Skip to content

Commit a8d848f

Browse files
Merge pull request #13090 from rabbitmq/mk-format-empty-consumer-channel-details-as-empty-map
HTTP API: format empty consumer.channel_details as an empty object
2 parents 8d07657 + 4edb901 commit a8d848f

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

deps/rabbitmq_management_agent/src/rabbit_mgmt_format.erl

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -579,12 +579,20 @@ format_channel_details(Any) -> Any.
579579

580580
-spec format_consumer_arguments(proplists:proplist()) -> proplists:proplist().
581581
format_consumer_arguments(Obj) ->
582-
case pget(arguments, Obj) of
583-
undefined -> Obj;
584-
#{} -> Obj;
585-
[] -> pset(arguments, #{}, Obj);
586-
Args -> pset(arguments, amqp_table(Args), Obj)
587-
end.
582+
%% Make sure arguments is a map and not an empty list
583+
Obj1 = case pget(arguments, Obj) of
584+
undefined -> Obj;
585+
#{} -> Obj;
586+
[] -> pset(arguments, #{}, Obj);
587+
Args -> pset(arguments, amqp_table(Args), Obj)
588+
end,
589+
%% Make sure channel_details is a map and not an empty list
590+
case pget(channel_details, Obj1) of
591+
undefined -> Obj1;
592+
#{} -> Obj1;
593+
[] -> pset(channel_details, #{}, Obj1);
594+
_ -> Obj1
595+
end.
588596

589597

590598
parse_bool(<<"true">>) -> true;

0 commit comments

Comments
 (0)