From 4f93f80916d031aa4cf4902e53bf8571dfe8567b Mon Sep 17 00:00:00 2001 From: "jim_nance%yahoo.com" Date: Fri, 16 Jul 2004 14:44:10 +0000 Subject: [PATCH] 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 --- view/src/nsViewManager.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/view/src/nsViewManager.cpp b/view/src/nsViewManager.cpp index f34d432db85f..7ee0837ce1f8 100644 --- a/view/src/nsViewManager.cpp +++ b/view/src/nsViewManager.cpp @@ -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);