diff options
author | Rickard Green <rickard@erlang.org> | 2021-04-02 04:28:27 +0200 |
---|---|---|
committer | Rickard Green <rickard@erlang.org> | 2021-04-02 04:28:27 +0200 |
commit | fa48e609282dab7c4d247db6a5783ba3c266d6ed (patch) | |
tree | 9de6878cbaf654a91ef0c7054ef69d846e9d4a6c | |
parent | 40922798411c2d23ee8a99456f96d6637c62b762 (diff) | |
download | erlang-fa48e609282dab7c4d247db6a5783ba3c266d6ed.tar.gz |
Fix handling of recv marker when serving a process_info request
-rw-r--r-- | erts/emulator/beam/erl_proc_sig_queue.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_proc_sig_queue.c b/erts/emulator/beam/erl_proc_sig_queue.c index 8b8b3fdbe3..0b94b33b8e 100644 --- a/erts/emulator/beam/erl_proc_sig_queue.c +++ b/erts/emulator/beam/erl_proc_sig_queue.c @@ -3973,6 +3973,10 @@ handle_process_info(Process *c_p, ErtsSigRecvTracing *tracing, ASSERT(tracing); if (*next_nm_sig != &c_p->sig_qs.cont) { + if (ERTS_SIG_IS_RECV_MARKER(c_p->sig_qs.cont)) { + ErtsRecvMarker *markp = (ErtsRecvMarker *) c_p->sig_qs.cont; + markp->prev_next = c_p->sig_qs.last; + } if (*next_nm_sig == tracing->messages.next) tracing->messages.next = &c_p->sig_qs.cont; *c_p->sig_qs.last = c_p->sig_qs.cont; |