aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/jlib.erl22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/jlib.erl b/src/jlib.erl
index f0dffe08a..5df54d6dd 100644
--- a/src/jlib.erl
+++ b/src/jlib.erl
@@ -382,7 +382,7 @@ iq_info_internal({xmlelement, Name, Attrs, Els}, Filter) when Name == "iq" ->
"result" -> {result, reply};
"error" -> {error, reply};
_ -> {invalid, invalid}
- end,
+ end,
if
Type1 == invalid ->
invalid;
@@ -404,22 +404,26 @@ iq_info_internal({xmlelement, Name, Attrs, Els}, Filter) when Name == "iq" ->
<- FilteredEls,
SubName /= "error"],
{case NonErrorEls of
- [NonErrorEl] -> xml:get_tag_attr_s("xmlns", NonErrorEl);
- _ -> invalid
+ [NonErrorEl] ->
+ xml:get_tag_attr_s("xmlns", NonErrorEl);
+ _ ->
+ invalid
end,
FilteredEls};
_ ->
- {invalid, invalid}
+ {invalid, []}
end,
if XMLNS == "", Class == request ->
invalid;
+ XMLNS == invalid ->
+ invalid;
true ->
- #iq{id = ID,
- type = Type1,
- xmlns = XMLNS,
- lang = Lang,
+ #iq{id = ID,
+ type = Type1,
+ xmlns = XMLNS,
+ lang = Lang,
sub_el = SubEl}
- end;
+ end;
Class == reply, Filter /= any ->
reply
end;