summaryrefslogtreecommitdiff
path: root/rts/sm
diff options
context:
space:
mode:
authorBen.Lippmeier@anu.edu.au <unknown>2010-02-22 03:16:27 +0000
committerBen.Lippmeier@anu.edu.au <unknown>2010-02-22 03:16:27 +0000
commitc24c65f518f153ff59acf27417fa36c14365951e (patch)
tree61b739e5e1582da0b0d0a89fca4ccced4476378d /rts/sm
parent390708b553cab55e270359e79fe15d1da4ecec08 (diff)
downloadhaskell-c24c65f518f153ff59acf27417fa36c14365951e.tar.gz
Fix #3875: Crash in parallel GC, wrong pointer was being tested.
Diffstat (limited to 'rts/sm')
-rw-r--r--rts/sm/Evac.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/sm/Evac.c b/rts/sm/Evac.c
index db249094e0..76026b0bac 100644
--- a/rts/sm/Evac.c
+++ b/rts/sm/Evac.c
@@ -878,7 +878,7 @@ selector_chain:
} while (info_ptr == (W_)&stg_WHITEHOLE_info);
// make sure someone else didn't get here first...
- if (IS_FORWARDING_PTR(p) ||
+ if (IS_FORWARDING_PTR(info_ptr) ||
INFO_PTR_TO_STRUCT(info_ptr)->type != THUNK_SELECTOR) {
// v. tricky now. The THUNK_SELECTOR has been evacuated
// by another thread, and is now either a forwarding ptr or IND.