summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancesco Mazzoli <francesco@rabbitmq.com>2012-04-16 14:43:01 +0100
committerFrancesco Mazzoli <francesco@rabbitmq.com>2012-04-16 14:43:01 +0100
commit27f6c3a8a3363ad95676f4d4b2cf9d8c2f6117fe (patch)
tree6456b4ee70a8b4e970d1f47ce386595d99b2a05e
parent797c633e2a56ffed0ae338979471a97bc7f26bbb (diff)
downloadrabbitmq-server-bug24870.tar.gz
Returning primary key and value when SKS empty.bug24870
-rw-r--r--src/dtree.erl10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/dtree.erl b/src/dtree.erl
index 67bbbc1b..78c88089 100644
--- a/src/dtree.erl
+++ b/src/dtree.erl
@@ -135,11 +135,11 @@ take2(PKS, SK, P) ->
gb_sets:fold(fun (PK, {KVs, P0}) ->
{SKS, V} = gb_trees:get(PK, P0),
SKS1 = gb_sets:delete(SK, SKS),
- case gb_sets:is_empty(SKS1) of
- true -> KVs1 = [{PK, V} | KVs],
- {KVs1, gb_trees:delete(PK, P0)};
- false -> {KVs, gb_trees:update(PK, {SKS1, V}, P0)}
- end
+ {[{PK, V} | KVs],
+ case gb_sets:is_empty(SKS1) of
+ true -> gb_trees:delete(PK, P0);
+ false -> gb_trees:update(PK, {SKS1, V}, P0)
+ end}
end, {[], P}, PKS).
take_all2(PKS, P) ->