diff -r 15bf7259bb7c -r d8a3531bc6b8 uiacceltk/hitchcock/coretoolkit/src/HuiCanvasTextureCache.cpp --- a/uiacceltk/hitchcock/coretoolkit/src/HuiCanvasTextureCache.cpp Tue Feb 02 07:56:43 2010 +0200 +++ b/uiacceltk/hitchcock/coretoolkit/src/HuiCanvasTextureCache.cpp Mon Feb 22 17:57:49 2010 +0200 @@ -285,6 +285,8 @@ CHuiCanvasTextImage::~CHuiCanvasTextImage() { + delete iText; + iText = NULL; } TBool CHuiCanvasTextImage::UseColorModulation() const @@ -2191,6 +2193,7 @@ iSearchedGraphicImageEntry->iBitmapTouchCount = KHuiInitialBitmapTouchCount; iSearchedGraphicImageEntry->iMaskTouchCount = KHuiInitialBitmapTouchCount; iSearchedGraphicImageEntry->iGcParams = aCachedImageParams.iGcParams; + iSearchedGraphicImageEntry->iCache = this; cachedEntry = iCachedImages.FindInOrder(iSearchedGraphicImageEntry, ImageOrderFunc); if (cachedEntry == KErrNotFound) @@ -2219,6 +2222,7 @@ iSearchedGraphicImageEntry->Reset(); iSearchedGraphicImageEntry->iGcParams = aGcParams; iSearchedGraphicImageEntry->iImageSize = aImageSize; + iSearchedGraphicImageEntry->iCache = this; for (TInt i=0; iiBitmapTouchCount = KHuiInitialBitmapTouchCount; iSearchedGraphicImageEntry->iMaskTouchCount = KHuiInitialBitmapTouchCount; iSearchedGraphicImageEntry->iGcParams = aCachedImageParams.iGcParams; + iSearchedGraphicImageEntry->iCache = this; cachedEntry = iCachedImages.FindInOrder(iSearchedGraphicImageEntry, ImageOrderFunc); if (cachedEntry == KErrNotFound) { // Create new entry object CHuiCanvasGraphicImage* newEntry = new (ELeave) CHuiCanvasGraphicImage; - CleanupStack::PushL(newEntry); + CleanupStack::PushL(newEntry); newEntry->CopyAttributes(*iSearchedGraphicImageEntry); @@ -2311,7 +2316,7 @@ User::LeaveIfError(iCachedImages.InsertInOrder(newEntry, ImageOrderFunc)); cachedEntry = iCachedImages.FindInOrder(newEntry, ImageOrderFunc); CleanupStack::Pop(newEntry); - needUpdate = ETrue; + needUpdate = ETrue; } else {