X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FStorage.c;h=3594f7197f8e6a1a629afdda8407320780ed66ce;hb=cc4e58b669ea557909bde4307b0cc5fed19de919;hp=46db1eefc9e912f078bc64e2cce102b2083128f5;hpb=5a2769f0273dd389977e8283375e7920d183bdd4;p=ghc-hetmet.git diff --git a/rts/Storage.c b/rts/Storage.c index 46db1ee..3594f71 100644 --- a/rts/Storage.c +++ b/rts/Storage.c @@ -127,7 +127,7 @@ initStorage( void ) RtsFlags.GcFlags.minAllocAreaSize > RtsFlags.GcFlags.maxHeapSize) { errorBelch("maximum heap size (-M) is smaller than minimum alloc area size (-A)"); - exit(1); + RtsFlags.GcFlags.minAllocAreaSize = RtsFlags.GcFlags.maxHeapSize; } initBlockAllocator(); @@ -273,6 +273,11 @@ exitStorage (void) void freeStorage (void) { + nat g; + + for(g = 0; g < RtsFlags.GcFlags.generations; g++) + stgFree(generations[g].steps); + stgFree(generations); freeAllMBlocks(); }