diff options
| -rw-r--r-- | src/gen_server2.erl | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gen_server2.erl b/src/gen_server2.erl index dad04fa78b..d4d583a086 100644 --- a/src/gen_server2.erl +++ b/src/gen_server2.erl @@ -608,6 +608,13 @@ in({'$gen_call', From, Msg}, GS2State = #gs2_state { prioritise_call = PC, GS2State #gs2_state { queue = priority_queue:in( {'$gen_call', From, Msg}, PC(Msg, From, GS2State), Queue) }; +in({'EXIT', Parent, Reason}, + GS2State = #gs2_state { parent = Parent, queue = Queue }) -> + GS2State #gs2_state { queue = priority_queue:in( + {'EXIT', Parent, Reason}, infinity, Queue) }; +in({system, From, Req}, GS2State = #gs2_state { queue = Queue }) -> + GS2State #gs2_state { queue = priority_queue:in( + {system, From, Req}, infinity, Queue) }; in(Input, GS2State = #gs2_state { prioritise_info = PI, queue = Queue }) -> GS2State #gs2_state { queue = priority_queue:in( Input, PI(Input, GS2State), Queue) }. |
