From f168a0ba576b494bfef739b4c0b995ebf3b29418 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sun, 13 Apr 2014 19:14:36 +0100 Subject: ensure callback_view_changed is called whenever the view may have changed We had missed a case here. Ditto for check_neighbours. --- src/gm.erl | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/gm.erl b/src/gm.erl index 250a8de8..c9ae9ced 100644 --- a/src/gm.erl +++ b/src/gm.erl @@ -1198,14 +1198,14 @@ maybe_erase_aliases(State = #state { self = Self, false -> Acc end end, {[], MembersState}, Aliases), - State1 = State #state { members_state = MembersState1 }, - case Erasable of - [] -> {ok, State1 #state { view = View }}; - _ -> View1 = group_to_view( - erase_members_in_group(Erasable, GroupName, TxnFun)), - {callback_view_changed(Args, Module, View0, View1), - check_neighbours(State1 #state { view = View1 })} - end. + View1 = case Erasable of + [] -> View; + _ -> group_to_view( + erase_members_in_group(Erasable, GroupName, TxnFun)) + end, + State1 = State #state { members_state = MembersState1, view = View1 }, + {callback_view_changed(Args, Module, View0, View1), + check_neighbours(State1)}. can_erase_view_member(Self, Self, _LA, _LP) -> false; can_erase_view_member(_Self, _Id, N, N) -> true; -- cgit v1.2.1