aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-07-12 18:27:35 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-07-12 18:27:35 -0700
commit65e8abdfabce0c3e6f5f4bef1479bd67bb3d28ad (patch)
tree4190634bf8706fb7a711620264cb79cd223432cd
parentcd55108944344ecb4f24eae42cab72ed93696c0d (diff)
only push proper canvases to canvas pool
-rw-r--r--src/library_sdl.js7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js
index 50405bb0..b7d73862 100644
--- a/src/library_sdl.js
+++ b/src/library_sdl.js
@@ -361,9 +361,10 @@ var LibrarySDL = {
},
freeSurface: function(surf) {
- SDL.canvasPool.push(SDL.surfaces[surf].canvas);
- _free(SDL.surfaces[surf].buffer);
- _free(SDL.surfaces[surf].pixelFormat);
+ var info = SDL.surfaces[surf];
+ if (!info.usePageCanvas && info.canvas) SDL.canvasPool.push(info.canvas);
+ _free(info.buffer);
+ _free(info.pixelFormat);
_free(surf);
SDL.surfaces[surf] = null;
},