diff options
author | Alexey Shchepin <alexey@process-one.net> | 2003-11-10 14:32:19 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2003-11-10 14:32:19 +0000 |
commit | 592d738114bc5eedfacbf143d6f35385742bf52d (patch) | |
tree | 4a5ed5de5bce4638a2a3bba930aad1297d53615a /src | |
parent | * src/ejabberd_sm.erl: Bugfix for previous resource handling (diff) |
* src/mod_muc/mod_muc_room.erl: Bugfix
* src/ejabberd_sm.erl (route_message): Bugfix
SVN Revision: 172
Diffstat (limited to 'src')
-rw-r--r-- | src/ejabberd_sm.erl | 18 | ||||
-rw-r--r-- | src/mod_muc/mod_muc_room.erl | 11 |
2 files changed, 20 insertions, 9 deletions
diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl index 333cda2db..e58562e85 100644 --- a/src/ejabberd_sm.erl +++ b/src/ejabberd_sm.erl @@ -300,13 +300,19 @@ route_message(From, To, Packet) -> {'EXIT', _} -> case ejabberd_auth:is_user_exists(LUser) of true -> - case catch mod_offline:store_packet(From, To, Packet) of - {'EXIT', _} -> - Err = jlib:make_error_reply( - Packet, ?ERR_SERVICE_UNAVAILABLE), - ejabberd_router:route(To, From, Err); + case xml:get_tag_attr_s("type", Packet) of + "error" -> + ok; _ -> - ok + case catch mod_offline:store_packet( + From, To, Packet) of + {'EXIT', _} -> + Err = jlib:make_error_reply( + Packet, ?ERR_SERVICE_UNAVAILABLE), + ejabberd_router:route(To, From, Err); + _ -> + ok + end end; _ -> Err = jlib:make_error_reply( diff --git a/src/mod_muc/mod_muc_room.erl b/src/mod_muc/mod_muc_room.erl index e381a544d..71c1a4417 100644 --- a/src/mod_muc/mod_muc_room.erl +++ b/src/mod_muc/mod_muc_room.erl @@ -256,9 +256,14 @@ normal_state({route, From, "", {next_state, normal_state, StateData} end; _ -> - Err = jlib:make_error_reply( - Packet, ?ERR_NOT_ALLOWED), - ejabberd_router:route(StateData#state.jid, From, Err), + case xml:get_attr_s("type", Attrs) of + "error" -> + ok; + _ -> + Err = jlib:make_error_reply( + Packet, ?ERR_NOT_ALLOWED), + ejabberd_router:route(StateData#state.jid, From, Err) + end, {next_state, normal_state, StateData} end; |