Commit 8e60e3f0 authored by Daniel Gröber (dxld)'s avatar Daniel Gröber (dxld) Committed by Marge Bot
Browse files

rts: Fix RetainerProfile early return with TREC_CHUNK

When pop() returns with `*c == NULL` retainerProfile will immediately
return. All other code paths is pop() continue with the next stackElement
when this happens so it seems weird to me that TREC_CHUNK we would suddenly
abort everything even though the stack might still have elements left to
process.
parent 5023adce
...@@ -849,7 +849,7 @@ pop( StgClosure **c, StgClosure **cp, retainer *r ) ...@@ -849,7 +849,7 @@ pop( StgClosure **c, StgClosure **cp, retainer *r )
if (entry_no == ((StgTRecChunk *)se->c)->next_entry_idx) { if (entry_no == ((StgTRecChunk *)se->c)->next_entry_idx) {
*c = NULL; *c = NULL;
popOff(); popOff();
return; break;
} }
entry = &((StgTRecChunk *)se->c)->entries[entry_no]; entry = &((StgTRecChunk *)se->c)->entries[entry_no];
if (field_no == 0) { if (field_no == 0) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment