Software /
code /
prosody
Diff
core/rostermanager.lua @ 1898:1ce02e2f5a3f
rostermanager: Fixed: Roster version was not being properly updated in some edge cases.
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Sun, 04 Oct 2009 21:34:17 +0500 |
parent | 1897:6d81e74310a7 |
child | 1947:ff2b86076e9c |
line wrap: on
line diff
--- a/core/rostermanager.lua Sun Oct 04 21:25:59 2009 +0500 +++ b/core/rostermanager.lua Sun Oct 04 21:34:17 2009 +0500 @@ -130,7 +130,7 @@ item.subscription = "both"; end item.ask = nil; - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end end @@ -152,7 +152,7 @@ end end if changed then - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end end @@ -174,7 +174,7 @@ end end if changed then - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end end @@ -196,7 +196,7 @@ end if not roster.pending then roster.pending = {}; end roster.pending[jid] = true; - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end function is_contact_pending_out(username, host, jid) local roster = load_roster(username, host); @@ -215,7 +215,7 @@ end item.ask = "subscribe"; log("debug", "set_contact_pending_out: saving roster; set "..username.."@"..host..".roster["..jid.."].ask=subscribe"); - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end function unsubscribe(username, host, jid) local roster = load_roster(username, host); @@ -230,7 +230,7 @@ elseif item.subscription == "to" then item.subscription = "none"; end - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end function subscribed(username, host, jid) if is_contact_pending_in(username, host, jid) then @@ -247,7 +247,7 @@ end roster.pending[jid] = nil; -- TODO maybe remove roster.pending if empty - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end -- TODO else implement optional feature pre-approval (ask = subscribed) end function unsubscribed(username, host, jid) @@ -269,7 +269,7 @@ end end if changed then - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end end @@ -278,7 +278,7 @@ local item = roster[jid]; if item and (item.subscription == "none" or item.subscription == "from") then item.ask = "subscribe"; - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end end @@ -287,7 +287,7 @@ local item = roster[jid]; if item and (item.subscription == "none" or item.subscription == "from" then item.ask = "subscribe"; - return datamanager.store(username, host, "roster", roster); + return save_roster(username, host, roster); end end]]