summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@rabbitmq.com>2010-12-09 12:42:57 +0000
committerMatthew Sackman <matthew@rabbitmq.com>2010-12-09 12:42:57 +0000
commit9ebc2256e9f14ab0af07be1b30d4e998dd3bdb23 (patch)
treea20f56c116553757e7f91a72343ac7274668ba06 /src
parentae4e7cff60352090417d4efe3b8d8bae4a3be80e (diff)
downloadrabbitmq-server-git-9ebc2256e9f14ab0af07be1b30d4e998dd3bdb23.tar.gz
Allow gen_server2s to change their callback modules dynamically. That was easy.
Diffstat (limited to 'src')
-rw-r--r--src/gen_server2.erl4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gen_server2.erl b/src/gen_server2.erl
index 6e02b23ecb..a54df3b865 100644
--- a/src/gen_server2.erl
+++ b/src/gen_server2.erl
@@ -880,6 +880,10 @@ handle_common_reply(Reply, Msg, GS2State = #gs2_state { name = Name,
loop(GS2State #gs2_state { state = NState,
time = Time1,
debug = Debug1 });
+ {become, Mod, NState} ->
+ loop(find_prioritisers(
+ GS2State #gs2_state { mod = Mod,
+ state = NState }));
_ ->
handle_common_termination(Reply, Msg, GS2State)
end.