diff options
author | Lukas Larsson <[email protected]> | 2013-08-12 09:52:37 +0200 |
---|---|---|
committer | Lukas Larsson <[email protected]> | 2013-08-12 09:52:37 +0200 |
commit | 675390362a7be900e17adc3eb50b898eb2a5ec97 (patch) | |
tree | b3f5f4c02571a19476d3519853976c90a5b293fe /erts/emulator/beam | |
parent | b43191903fd7c0f1185f630a436c60dd13b4b1b5 (diff) | |
parent | 01a13c00f67112e7996e45439d4eec9e6aa414ce (diff) | |
download | otp-675390362a7be900e17adc3eb50b898eb2a5ec97.tar.gz otp-675390362a7be900e17adc3eb50b898eb2a5ec97.tar.bz2 otp-675390362a7be900e17adc3eb50b898eb2a5ec97.zip |
Merge branch 'maint'
* maint:
erts: Do not enable TRACE_SILENT when testing a ms
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r-- | erts/emulator/beam/erl_db_util.c | 5 | ||||
-rwxr-xr-x | erts/emulator/beam/global.h | 7 |
2 files changed, 8 insertions, 4 deletions
diff --git a/erts/emulator/beam/erl_db_util.c b/erts/emulator/beam/erl_db_util.c index 713ac0ba18..ef3749a2c4 100644 --- a/erts/emulator/beam/erl_db_util.c +++ b/erts/emulator/beam/erl_db_util.c @@ -2319,6 +2319,8 @@ restart: break; case matchSilent: --esp; + if (in_flags & ERTS_PAM_IGNORE_TRACE_SILENT) + break; if (*esp == am_true) { erts_smp_proc_lock(c_p, ERTS_PROC_LOCKS_ALL_MINOR); ERTS_TRACE_FLAGS(c_p) |= F_TRACE_SILENT; @@ -4971,7 +4973,8 @@ static Eterm match_spec_test(Process *p, Eterm against, Eterm spec, int trace) save_cp = p->cp; p->cp = NULL; res = erts_match_set_run(p, mps, arr, n, - ERTS_PAM_COPY_RESULT, &ret_flags); + ERTS_PAM_COPY_RESULT|ERTS_PAM_IGNORE_TRACE_SILENT, + &ret_flags); p->cp = save_cp; } else { n = 0; diff --git a/erts/emulator/beam/global.h b/erts/emulator/beam/global.h index 2a3a45f717..7f7b6f5d1e 100755 --- a/erts/emulator/beam/global.h +++ b/erts/emulator/beam/global.h @@ -1024,9 +1024,10 @@ Eterm erts_match_set_lint(Process *p, Eterm matchexpr); extern void erts_match_set_release_result(Process* p); enum erts_pam_run_flags { - ERTS_PAM_TMP_RESULT=0, - ERTS_PAM_COPY_RESULT=1, - ERTS_PAM_CONTIGUOUS_TUPLE=2 + ERTS_PAM_TMP_RESULT=1, + ERTS_PAM_COPY_RESULT=2, + ERTS_PAM_CONTIGUOUS_TUPLE=4, + ERTS_PAM_IGNORE_TRACE_SILENT=8 }; extern Eterm erts_match_set_run(Process *p, Binary *mpsp, Eterm *args, int num_args, |