Bug 249810 - Add calls to PL_FreeArenaPool() so Arena memory ends up on the

global Arena free list.  This is good because these arenas get created and
destroyed quickly. r+sr=roc
This commit is contained in:
jim_nance%yahoo.com 2004-07-16 14:44:10 +00:00
parent 8bd20a31bb
commit 4f93f80916

View File

@ -870,6 +870,7 @@ void nsViewManager::Refresh(nsView *aView, nsIRenderingContext *aContext,
localcx->FillRect(damageRegion.GetBounds());
}
RenderViews(aView, *localcx, damageRegion, ds, displayList);
PL_FreeArenaPool(&displayArena);
PL_FinishArenaPool(&displayArena);
if (usingDoubleBuffer) {
@ -2302,6 +2303,7 @@ nsEventStatus nsViewManager::HandleEvent(nsView* aView, nsGUIEvent* aEvent, PRBo
}
}
PL_FreeArenaPool(&displayArena);
PL_FinishArenaPool(&displayArena);
// release death grips
@ -2864,6 +2866,7 @@ PRBool nsViewManager::CanScrollWithBitBlt(nsView* aView)
}
}
PL_FreeArenaPool(&displayArena);
PL_FinishArenaPool(&displayArena);
return !anyUnscrolledViews && !anyUnblittableViews;
@ -3271,6 +3274,7 @@ NS_IMETHODIMP nsViewManager::Display(nsIView* aView, nscoord aX, nscoord aY, con
PL_INIT_ARENA_POOL(&displayArena, "displayArena", 1024);
BuildRenderingDisplayList(view, nsRegion(trect), &displayList, displayArena);
RenderViews(view, *localcx, nsRegion(trect), PR_FALSE, displayList);
PL_FreeArenaPool(&displayArena);
PL_FinishArenaPool(&displayArena);
NS_RELEASE(localcx);