fix(emqx_channel): fix some error when properties equal undefined
This commit is contained in:
parent
6ffbc0949d
commit
8bcf15f391
|
@ -1247,9 +1247,13 @@ packing_alias(Packet = #mqtt_packet{
|
|||
Channel = ?IS_MQTT_V5 = #channel{topic_aliases = TopicAliases, alias_maximum = Limits}) ->
|
||||
case find_alias(outbound, Topic, TopicAliases) of
|
||||
{ok, AliasId} ->
|
||||
NProp = case Prop of
|
||||
undefined -> #{'Topic-Alias' => AliasId};
|
||||
_ -> maps:merge(Prop, #{'Topic-Alias' => AliasId})
|
||||
end,
|
||||
NPublish = Publish#mqtt_packet_publish{
|
||||
topic_name = <<>>,
|
||||
properties = maps:merge(Prop, #{'Topic-Alias' => AliasId})
|
||||
properties = NProp
|
||||
},
|
||||
{Packet#mqtt_packet{variable = NPublish}, Channel};
|
||||
error ->
|
||||
|
@ -1260,9 +1264,13 @@ packing_alias(Packet = #mqtt_packet{
|
|||
true ->
|
||||
NTopicAliases = save_alias(outbound, AliasId, Topic, TopicAliases),
|
||||
NChannel = Channel#channel{topic_aliases = NTopicAliases},
|
||||
NProp = case Prop of
|
||||
undefined -> #{'Topic-Alias' => AliasId};
|
||||
_ -> maps:merge(Prop, #{'Topic-Alias' => AliasId})
|
||||
end,
|
||||
NPublish = Publish#mqtt_packet_publish{
|
||||
topic_name = Topic,
|
||||
properties = maps:merge(Prop, #{'Topic-Alias' => AliasId})
|
||||
properties = NProp
|
||||
},
|
||||
{Packet#mqtt_packet{variable = NPublish}, NChannel};
|
||||
false -> {Packet, Channel}
|
||||
|
|
Loading…
Reference in New Issue