diff options
| author | Rob Harrop <rob@rabbitmq.com> | 2011-03-07 16:57:21 +0000 |
|---|---|---|
| committer | Rob Harrop <rob@rabbitmq.com> | 2011-03-07 16:57:21 +0000 |
| commit | 717de5c2557aa3bfdb475d5d41eb110a0c8790ce (patch) | |
| tree | 423e96cc008d97f6f00cd34cd0e8e679b78ee3f1 | |
| parent | 1e6c32ed2248a5fcc780633b9137e19e313f3420 (diff) | |
| download | rabbitmq-server-git-717de5c2557aa3bfdb475d5d41eb110a0c8790ce.tar.gz | |
Fixed a few pattern matching errors - remove actually works again
| -rw-r--r-- | src/rabbit_exchange_type_topic.erl | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/rabbit_exchange_type_topic.erl b/src/rabbit_exchange_type_topic.erl index 5c5d760e05..ff4828c15c 100644 --- a/src/rabbit_exchange_type_topic.erl +++ b/src/rabbit_exchange_type_topic.erl @@ -83,9 +83,10 @@ remove_bindings(true, X, Bs) -> {[{FinalNode, D} | Acc], PathAcc1} end, {[], gb_trees:empty()}, Bs), + io:format("~p~n", [Paths]), [trie_remove_binding(X, FinalNode, D) || {FinalNode, D} <- ToDelete], [trie_remove_edge(X, Parent, Node, W) || - {[{Node, W}, {Parent, _} | _ ], {0, 0}} + {Node, {[{Node, W}, {Parent, _} | _], 0, 0}} <- gb_trees:to_list(Paths)], ok; remove_bindings(false, _X, _Bs) -> @@ -119,7 +120,7 @@ with_path_acc(X, Fun, [{Node, _} | ParentPath], PathAcc) -> NewVal = Fun(gb_trees:get(Node, PathAcc)), NewPathAcc = gb_trees:update(Node, NewVal, PathAcc), case NewVal of - {0, 0} -> + {_, 0, 0} -> decrement_edges(X, ParentPath, maybe_add_path(X, ParentPath, NewPathAcc)); _ -> |
