diff options
Diffstat (limited to 'lib/eunit/src/eunit_serial.erl')
-rw-r--r-- | lib/eunit/src/eunit_serial.erl | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/lib/eunit/src/eunit_serial.erl b/lib/eunit/src/eunit_serial.erl index 80e79116e3..da76064a53 100644 --- a/lib/eunit/src/eunit_serial.erl +++ b/lib/eunit/src/eunit_serial.erl @@ -56,19 +56,21 @@ %% future use, and/or cancel the current item and possibly one or more %% of its parent groups. --record(state, {listeners :: set(), - cancelled = eunit_lib:trie_new() :: gb_tree(), - messages = dict:new() :: dict()}). +-record(state, {listeners :: sets:set(), + cancelled = eunit_lib:trie_new() :: gb_trees:tree(), + messages = dict:new() :: dict:dict()}). start(Pids) -> - spawn(fun () -> serializer(Pids) end). - -serializer(Pids) -> - St = #state{listeners = sets:from_list(Pids), - cancelled = eunit_lib:trie_new(), - messages = dict:new()}, - expect([], undefined, 0, St), - exit(normal). + spawn(serializer_fun(Pids)). + +serializer_fun(Pids) -> + fun () -> + St = #state{listeners = sets:from_list(Pids), + cancelled = eunit_lib:trie_new(), + messages = dict:new()}, + expect([], undefined, 0, St), + exit(normal) + end. %% collect beginning and end of an expected item; return {Done, NewSt} %% where Done is true if there are no more items of this group |