Просмотр исходного кода

3.3.1.1 dup: reset dup when route message

Ery Lee 11 лет назад
Родитель
Сommit
760d6954b3
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      apps/emqtt/src/emqtt_router.erl

+ 4 - 1
apps/emqtt/src/emqtt_router.erl

@@ -65,7 +65,7 @@ start_link() ->
     gen_server:start_link({local, ?SERVER}, ?MODULE, [], []).
 
 route(Message) ->
-	emqtt_pubsub:publish(retained(Message)).
+	emqtt_pubsub:publish(retained(reset_dup(Message))).
 
 %% ------------------------------------------------------------------
 %% gen_server Function Definitions
@@ -97,3 +97,6 @@ retained(Msg = #mqtt_message{retain = true, topic = Topic}) ->
 
 retained(Msg) -> Msg.
 
+reset_dup(Msg = #mqtt_message{dup = true}) -> Msg#mqtt_message{dup = false};
+reset_dup(Msg) -> Msg.
+