diff options
author | Patrik Nyblom <[email protected]> | 2013-06-06 08:20:20 +0200 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2013-06-06 08:20:20 +0200 |
commit | 2b4707d10b6ea5656242f5ae8506969c921ac841 (patch) | |
tree | 42f6bf3ba325f2d7a31734aea591a9c80c50a6a3 /erts/emulator/beam/erl_gc.c | |
parent | e967d253c637f599b9f9237b605bc9c066032b41 (diff) | |
download | otp-2b4707d10b6ea5656242f5ae8506969c921ac841.tar.gz otp-2b4707d10b6ea5656242f5ae8506969c921ac841.tar.bz2 otp-2b4707d10b6ea5656242f5ae8506969c921ac841.zip |
Teach erl_gc:offset_rootset about extra_root
Diffstat (limited to 'erts/emulator/beam/erl_gc.c')
-rw-r--r-- | erts/emulator/beam/erl_gc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_gc.c b/erts/emulator/beam/erl_gc.c index da0f46e556..7b463958d2 100644 --- a/erts/emulator/beam/erl_gc.c +++ b/erts/emulator/beam/erl_gc.c @@ -2555,6 +2555,12 @@ offset_one_rootset(Process *p, Sint offs, char* area, Uint area_size, p->dictionary->used, offs, area, area_size); } + if (p->extra_root != NULL) { + offset_heap_ptr(p->extra_root->objv, + p->extra_root->sz, + offs, area, area_size); + } + offset_heap_ptr(&p->fvalue, 1, offs, area, area_size); offset_heap_ptr(&p->ftrace, 1, offs, area, area_size); offset_heap_ptr(&p->seq_trace_token, 1, offs, area, area_size); |