summaryrefslogtreecommitdiff
path: root/rts/Stable.c
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2008-06-09 19:17:22 +0000
committerSimon Marlow <marlowsd@gmail.com>2008-06-09 19:17:22 +0000
commit4d15b247104d9cfe36a4e29f7df00e582e7ec9f0 (patch)
tree298bb66a6ac90e067105e1d12c997e7d9e36b99a /rts/Stable.c
parent74ee9df9f9e79e7110e9d8541b84010f35c464c5 (diff)
downloadhaskell-4d15b247104d9cfe36a4e29f7df00e582e7ec9f0.tar.gz
another stableptr003 fix
Diffstat (limited to 'rts/Stable.c')
-rw-r--r--rts/Stable.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/rts/Stable.c b/rts/Stable.c
index 046fb3be42..a2c47d785c 100644
--- a/rts/Stable.c
+++ b/rts/Stable.c
@@ -218,6 +218,9 @@ lookupStableName_(StgPtr p)
*/
p = (StgPtr)removeIndirections((StgClosure*)p);
+ // register the untagged pointer. This just makes things simpler.
+ p = (StgPtr)UNTAG_CLOSURE((StgClosure*)p);
+
sn_tmp = lookupHashTable(addrToStableHash,(W_)p);
sn = (StgWord)sn_tmp;