X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FRaiseAsync.c;h=4a405e7b4909f23511e822873c50e3184670fe26;hb=49732aefa0fac9e8c844c249070030df74c03c9b;hp=3b97b9c6ddab1f442941005ef8cd89aa37b1197f;hpb=213fbc81db6cc02bde330dacd4bec55ac589d1ee;p=ghc-hetmet.git diff --git a/rts/RaiseAsync.c b/rts/RaiseAsync.c index 3b97b9c..4a405e7 100644 --- a/rts/RaiseAsync.c +++ b/rts/RaiseAsync.c @@ -12,8 +12,8 @@ #include "Trace.h" #include "RaiseAsync.h" #include "SMP.h" -#include "Schedule.h" #include "Storage.h" +#include "Schedule.h" #include "LdvProfile.h" #include "Updates.h" #include "STM.h" @@ -1020,6 +1020,7 @@ raiseAsync(Capability *cap, StgTSO *tso, StgClosure *exception, StgTRecHeader *trec = tso -> trec; StgTRecHeader *outer = stmGetEnclosingTRec(trec); stmAbortTransaction(cap, trec); + stmFreeAbortedTRec(cap, trec); tso -> trec = outer; break;