]> granicus.if.org Git - ejabberd/commitdiff
Do not call mod_caps:clear_caps as it breaks PubSub/PEP (EJAB-854)
authorChristophe Romain <christophe.romain@process-one.net>
Mon, 23 Feb 2009 15:56:19 +0000 (15:56 +0000)
committerChristophe Romain <christophe.romain@process-one.net>
Mon, 23 Feb 2009 15:56:19 +0000 (15:56 +0000)
SVN Revision: 1912

ChangeLog
src/ejabberd_c2s.erl

index f7863b148f9f771bb45749b6de77d00534d2a5e9..9f2b176c3c4e98bfd3cd718b2cc3fb6506aa6516 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-02-23  Christophe Romain <christophe.romain@process-one.net>
+
+       * src/ejabberd_c2s.erl: Do not call mod_caps:clear_caps, this previous
+       optimization is too agressive and breaks PubSub/PEP standard behavior
+       (EJAB-854)
+
 2009-02-23  Alexey Shchepin  <alexey@process-one.net>
 
        * src/web/ejabberd_http.erl: Added a workaround for inet:peername
index 6d68d249b96638c4889f1167dc585be150984751..4b55e0250e6d20786c42801c4fdcff777d7983cd 100644 (file)
@@ -1125,7 +1125,9 @@ handle_info({route, From, To, Packet}, StateName, StateData) ->
                                %% Note contact availability
                                case xml:get_attr_s("type", Attrs) of
                                    "unavailable" ->
-                                       mod_caps:clear_caps(From);
+                                       %mod_caps:clear_caps(From);
+                                       % caps clear disabled cause it breaks things
+                                       ok;
                                    _ ->
                                        Caps = mod_caps:read_caps(Els),
                                        mod_caps:note_caps(StateData#state.server, From, Caps)