uiacceltk/hitchcock/coretoolkit/src/HuiCanvasTextureCache.cpp
branchRCL_3
changeset 17 3ac8bf5c5014
parent 11 46927d61fef3
child 24 f93c875b566e
--- a/uiacceltk/hitchcock/coretoolkit/src/HuiCanvasTextureCache.cpp	Wed Apr 14 16:53:50 2010 +0300
+++ b/uiacceltk/hitchcock/coretoolkit/src/HuiCanvasTextureCache.cpp	Tue Apr 27 17:34:42 2010 +0300
@@ -3270,7 +3270,7 @@
     if (cachedEntry == KErrNotFound)
         {
         // Try first getting reused render buffer
-        newRenderBufferEntry = ReUseReleasedRenderBuffer(aSizeHint);
+        newRenderBufferEntry = ReUseReleasedRenderBufferL(aSizeHint);
 
         // Create new entry object if needed
         if (!newRenderBufferEntry)
@@ -3375,7 +3375,7 @@
 // 
 // ---------------------------------------------------------------------------
 //
-CHuiCanvasRenderBufferImage* CHuiCanvasTextureCache::ReUseReleasedRenderBuffer(TSize aSizeHint)
+CHuiCanvasRenderBufferImage* CHuiCanvasTextureCache::ReUseReleasedRenderBufferL(TSize aSizeHint)
     {
     if (aSizeHint == TSize(0,0))
         {
@@ -3392,6 +3392,12 @@
             // Remove from array and return instance to caller
             CHuiCanvasRenderBufferImage* reusedEntry = iCachedRenderBuffers[i];        
             iCachedRenderBuffers.Remove(i);
+            
+            if (reusedEntry->iCanvasRenderBuffer && reusedEntry->iCanvasRenderBuffer->IsInitialized())
+                {
+                reusedEntry->iCanvasRenderBuffer->InitializeL(aSizeHint, ETrue);
+                }
+            
             return reusedEntry;
             }
         }