aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2015-04-05 16:19:02 +0200
committerKim Alvefur <zash@zash.se>2015-04-05 16:19:02 +0200
commit336f7667f8c677c9d1222c993e3f99bff0180772 (patch)
tree760c2946c0b1c7a29be53929ebc7f52b7f610ab3 /core
parent17e942c4dc0d1afa484d07c1279ca7d5446ea6e9 (diff)
downloadprosody-336f7667f8c677c9d1222c993e3f99bff0180772.tar.gz
prosody-336f7667f8c677c9d1222c993e3f99bff0180772.zip
rostermanager: Fix roster upgrade code (thanks mva)
Diffstat (limited to 'core')
-rw-r--r--core/rostermanager.lua11
1 files changed, 5 insertions, 6 deletions
diff --git a/core/rostermanager.lua b/core/rostermanager.lua
index b39e5323..612a349f 100644
--- a/core/rostermanager.lua
+++ b/core/rostermanager.lua
@@ -86,12 +86,11 @@ local function roster_metadata(roster, err)
metadata = { broken = err or nil };
roster[false] = metadata;
end
- if not metadata.pending then
- if roster.pending and not type(roster.pending.subscription) == "string" then
- metadata.pending, roster.pending = roster.pending, nil;
- else
- metadata.pending = {};
- end
+ if roster.pending and type(roster.pending.subscription) ~= "string" then
+ metadata.pending = roster.pending;
+ roster.pending = nil;
+ elseif not metadata.pending then
+ metadata.pending = {};
end
return metadata;
end