aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/test/Makefile
diff options
context:
space:
mode:
authorSteve Vinoski <[email protected]>2014-03-19 11:45:11 -0400
committerSteve Vinoski <[email protected]>2014-03-21 10:19:51 -0400
commit6c298a7bfa332e5b7d153648d741740abc3bcdf8 (patch)
tree3f8a5604555b8a3b959c5184bba59d9c65b0da3a /lib/stdlib/test/Makefile
parent73af231f1a22083031df49ba19fdfd4f6b434a10 (diff)
downloadotp-6c298a7bfa332e5b7d153648d741740abc3bcdf8.tar.gz
otp-6c298a7bfa332e5b7d153648d741740abc3bcdf8.tar.bz2
otp-6c298a7bfa332e5b7d153648d741740abc3bcdf8.zip
fix sys:get_state/1,2 and sys:replace_state/2,3 when sys suspended
Add two new system callbacks Module:system_get_state/1 and Module:system_replace_state/2 to allow sys:get_state/1,2 and sys:replace_state/2,3 to operate correctly even if a process is sys suspended. Modify gen_server, gen_fsm, and gen_event to support the new callbacks. If a callback module does not export these functions, then by default the Misc value (the same as that passed as the final argument to sys:handle_system_msg/6, and returned as part of the return value of sys:get_status/1,2) is treated as the callback module's state. The previous behaviour of intercepting the system message and passing a tuple of size 2 as the last argument to sys:handle_system_msg/6 is no longer supported. Add tests to verify the correctness of sys:get_state/1,2 and sys:replace_state/2,3 when processes are sys suspended. Add two tests for modules that implement special processes, one that exports system_get_state/1 and system_replace_state/2 and one that doesn't. Much of the credit for this patch goes to James Fish, who reported the initial problem and implemented much of the fix.
Diffstat (limited to 'lib/stdlib/test/Makefile')
-rw-r--r--lib/stdlib/test/Makefile2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/stdlib/test/Makefile b/lib/stdlib/test/Makefile
index af82f22b21..39f6ce423a 100644
--- a/lib/stdlib/test/Makefile
+++ b/lib/stdlib/test/Makefile
@@ -73,6 +73,8 @@ MODULES= \
supervisor_SUITE \
supervisor_bridge_SUITE \
sys_SUITE \
+ sys_sp1 \
+ sys_sp2 \
tar_SUITE \
timer_SUITE \
timer_simple_SUITE \