aboutsummaryrefslogtreecommitdiffstats
path: root/lib/observer/src
diff options
context:
space:
mode:
authorJosé Valim <[email protected]>2016-03-31 10:34:15 +0200
committerJosé Valim <[email protected]>2016-06-04 23:00:07 +0200
commite2577531278c5dde283c4ab7be766d081c363ec3 (patch)
tree3285baa6cab800a705c15d889cacc934fb1d5681 /lib/observer/src
parent10a218b37324fd94ddbfe5568554de263492c82c (diff)
downloadotp-e2577531278c5dde283c4ab7be766d081c363ec3.tar.gz
otp-e2577531278c5dde283c4ab7be766d081c363ec3.tar.bz2
otp-e2577531278c5dde283c4ab7be766d081c363ec3.zip
Return callback module in supervisor format_status
The previous implementation of supervisor:get_callback_module/1 used sys:get_status/1 to get the supervisor inner state and retrieve the callback module. Such implementation forbids any other supervisor implementation that has an internal state different than the #state{} record in supervisor.erl. This patch allows supervisors to return the callback module as part of the sys:get_status/1 data, no longer coupling the callback module implementation with the inner #state{} record. Notice we have kept the clause matching the previous sys:get_status/1 reply for backwards compatibility purposes.
Diffstat (limited to 'lib/observer/src')
-rw-r--r--lib/observer/src/observer_procinfo.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/observer/src/observer_procinfo.erl b/lib/observer/src/observer_procinfo.erl
index 871ef603db..2f07b73578 100644
--- a/lib/observer/src/observer_procinfo.erl
+++ b/lib/observer/src/observer_procinfo.erl
@@ -317,7 +317,7 @@ fetch_state_info2(Pid, M) ->
of
{status, _, {module, _},
[_PDict, _SysState, _Parent, _Dbg,
- [Header,{data, First},{data, Second}]]} ->
+ [Header,{data, First},{data, Second}|_]]} ->
[{"Behaviour", B}, Header] ++ First ++ Second;
{status, _, {module, _},
[_PDict, _SysState, _Parent, _Dbg,