diff options
author | John Högberg <[email protected]> | 2017-10-25 08:58:33 +0200 |
---|---|---|
committer | John Högberg <[email protected]> | 2017-10-25 08:58:33 +0200 |
commit | 40e787f289a240e6a6b12e03b9501dc492c89aa9 (patch) | |
tree | 1298495e187d9830935c85c8fae691d8f3ba8a27 /lib/kernel | |
parent | 9bbe5884cf620aa1c70b92b6e0f3a9d5c3866a9c (diff) | |
parent | c26f0e58f440859abbfb9b4e3570713ac722e0da (diff) | |
download | otp-40e787f289a240e6a6b12e03b9501dc492c89aa9.tar.gz otp-40e787f289a240e6a6b12e03b9501dc492c89aa9.tar.bz2 otp-40e787f289a240e6a6b12e03b9501dc492c89aa9.zip |
Merge branch 'maint'
* maint:
Updated OTP version
Update release notes
Update version numbers
erts: Fix so that bind correct schedulers
Update version
Fix error handling when decoding an AVP with an alternate dictionary
Remove unused function arguments
Fix faulty recursion
vsn -> 2.1.2
Update appup for ERIERL-14684
Fix speling error 'sndbuf' -> 'recbuf'
Add zlib:set_controlling_process/2
Diffstat (limited to 'lib/kernel')
-rw-r--r-- | lib/kernel/test/zlib_SUITE.erl | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/lib/kernel/test/zlib_SUITE.erl b/lib/kernel/test/zlib_SUITE.erl index 131a0685cd..7be7e503df 100644 --- a/lib/kernel/test/zlib_SUITE.erl +++ b/lib/kernel/test/zlib_SUITE.erl @@ -978,23 +978,37 @@ split_bin(Last,Acc) -> only_allow_owner(Config) when is_list(Config) -> Z = zlib:open(), + Owner = self(), ?m(ok, zlib:inflateInit(Z)), ?m(ok, zlib:inflateReset(Z)), {Pid, Ref} = spawn_monitor( fun() -> - ?m(?EXIT(not_on_controlling_process), zlib:inflateReset(Z)) + ?m(?EXIT(not_on_controlling_process), zlib:inflateReset(Z)), + Owner ! '$transfer_ownership', + receive + '$ownership_transferred' -> + ?m(ok, zlib:inflateReset(Z)) + after 200 -> + ct:fail("Never received transfer signal.") + end end), + ownership_transfer_check(Z, Pid, Ref). +ownership_transfer_check(Z, WorkerPid, Ref) -> receive - {'DOWN', Ref, process, Pid, _Reason} -> - ok + '$transfer_ownership' -> + zlib:set_controlling_process(Z, WorkerPid), + WorkerPid ! '$ownership_transferred', + ownership_transfer_check(Z, WorkerPid, Ref); + {'DOWN', Ref, process, WorkerPid, normal} -> + ok; + {'DOWN', Ref, process, WorkerPid, Reason} -> + ct:fail("Spawned worker crashed with reason ~p.", [Reason]) after 200 -> ct:fail("Spawned worker timed out.") - end, - - ?m(ok, zlib:inflateReset(Z)). + end. sub_heap_binaries(Config) when is_list(Config) -> Compressed = zlib:compress(<<"gurka">>), |