]> granicus.if.org Git - ejabberd/commitdiff
Take care of xml:lang attribute in unauthenticated stanzas as well
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>
Sat, 6 Nov 2010 04:58:52 +0000 (13:58 +0900)
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>
Sat, 6 Nov 2010 04:58:52 +0000 (13:58 +0900)
src/ejabberd_c2s.erl

index 57812aa011b6ce3b218a4cb6062310977ccf8af9..788c7d69e27ab1167ebead8c70f38c52bff0e58b 100644 (file)
@@ -2139,7 +2139,17 @@ get_statustag(Presence) ->
     end.
 
 process_unauthenticated_stanza(StateData, El) ->
-    case jlib:iq_query_info(El) of
+    NewEl = case xml:get_tag_attr_s("xml:lang", El) of
+               "" ->
+                   case StateData#state.lang of
+                       "" -> El;
+                       Lang ->
+                           xml:replace_tag_attr("xml:lang", Lang, El)
+                   end;
+               _ ->
+                   El
+           end,
+    case jlib:iq_query_info(NewEl) of
        #iq{} = IQ ->
            Res = ejabberd_hooks:run_fold(c2s_unauthenticated_iq,
                                          StateData#state.server,