From 243666f202bf382d49e87cc81606283b066cbeeb Mon Sep 17 00:00:00 2001 From: WanderWang Date: Mon, 16 Sep 2013 22:04:57 +0800 Subject: [PATCH 1/2] Update CCTextureCache.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1、Fix error that cc.TextureCache.dumpCachedTextureInfo() will crash when there are cc.LabelBMFont has been created 2、Fix bug when calculate HTMLCanvasElement 's memory --- cocos2d/textures/CCTextureCache.js | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/cocos2d/textures/CCTextureCache.js b/cocos2d/textures/CCTextureCache.js index 583a7f10a7..c6058f917d 100644 --- a/cocos2d/textures/CCTextureCache.js +++ b/cocos2d/textures/CCTextureCache.js @@ -484,7 +484,7 @@ cc.TextureCache = cc.Class.extend(/** @lends cc.TextureCache# */{ * This will attempt to calculate the size of each texture, and the total texture memory in use.

*/ dumpCachedTextureInfo:function () { - var count = 0; + var count = 0; var totalBytes = 0, locTextures = this._textures; for (var key in locTextures) { @@ -494,18 +494,22 @@ cc.TextureCache = cc.Class.extend(/** @lends cc.TextureCache# */{ cc.log("cocos2d: '" + key + "' id=" + selTexture.getHtmlElementObj().src + " " + selTexture.getPixelsWide() + " x " + selTexture.getPixelsHigh()); else { cc.log("cocos2d: '" + key + "' id= HTMLCanvasElement " + selTexture.getPixelsWide() + " x " + selTexture.getPixelsHigh()); - totalBytes += selTexture.getPixelsWide() * selTexture.getPixelsHigh() * 4; } + totalBytes += selTexture.getPixelsWide() * selTexture.getPixelsHigh() * 4; } var locTextureColorsCache = this._textureColorsCache; for (key in locTextureColorsCache) { - var selCanvas = locTextureColorsCache[key]; - count++; - cc.log("cocos2d: '" + key + "' id= HTMLCanvasElement " + selCanvas.getPixelsWide() + " x " + selCanvas.getPixelsHigh()); - totalBytes += selCanvas.getPixelsWide() * selCanvas.getPixelsHigh() * 4; - } + var selCanvasColorsArr = locTextureColorsCache[key]; + for (var selCanvasKey in selCanvasColorsArr){ + var selCanvas = selCanvasColorsArr[selCanvasKey]; + count++; + cc.log("cocos2d: '" + key + "' id= HTMLCanvasElement " + selCanvas.width + " x " + selCanvas.height); + totalBytes += selCanvas.width * selCanvas.height * 4; + } + } +// cc.log("cocos2d: TextureCache dumpDebugInfo: " + count + " textures, HTMLCanvasElement for " + (totalBytes / 1024) + " KB (" + (totalBytes / (1024.0 * 1024.0)).toFixed(2) + " MB)"); } From 6f2b4e73b1f25ab5e8176b1547fe121334d939a0 Mon Sep 17 00:00:00 2001 From: WanderWang Date: Tue, 17 Sep 2013 10:18:37 +0800 Subject: [PATCH 2/2] Update CCTextureCache.js fix code format --- cocos2d/textures/CCTextureCache.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cocos2d/textures/CCTextureCache.js b/cocos2d/textures/CCTextureCache.js index c6058f917d..9bd22e8d34 100644 --- a/cocos2d/textures/CCTextureCache.js +++ b/cocos2d/textures/CCTextureCache.js @@ -484,7 +484,7 @@ cc.TextureCache = cc.Class.extend(/** @lends cc.TextureCache# */{ * This will attempt to calculate the size of each texture, and the total texture memory in use.

*/ dumpCachedTextureInfo:function () { - var count = 0; + var count = 0; var totalBytes = 0, locTextures = this._textures; for (var key in locTextures) { @@ -509,7 +509,6 @@ cc.TextureCache = cc.Class.extend(/** @lends cc.TextureCache# */{ } } -// cc.log("cocos2d: TextureCache dumpDebugInfo: " + count + " textures, HTMLCanvasElement for " + (totalBytes / 1024) + " KB (" + (totalBytes / (1024.0 * 1024.0)).toFixed(2) + " MB)"); }