aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-05-30 13:22:23 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-05-30 13:22:23 -0700
commit5a4828f4ae133fcd6d2abaf2822d6184b07eb513 (patch)
treebcf6bd32e7ec4e925d07e3744fc0179152e1136a
parentabe3dbef68bf5e71894e2fe514ac263eaf125224 (diff)
parent2c4df5bf6a6d149b881b1a124a0999623d806e82 (diff)
Merge pull request #1220 from inolen/free_surface
SDL_SetVideoMode: Free old surface before creating new one
-rw-r--r--src/library_sdl.js5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js
index d31c37f5..4f871f9d 100644
--- a/src/library_sdl.js
+++ b/src/library_sdl.js
@@ -694,6 +694,11 @@ var LibrarySDL = {
Module['canvas'].addEventListener(event, SDL.receiveEvent, true);
});
Browser.setCanvasSize(width, height, true);
+ // Free the old surface first.
+ if (SDL.screen) {
+ SDL.freeSurface(SDL.screen);
+ SDL.screen = null;
+ }
SDL.screen = SDL.makeSurface(width, height, flags, true, 'screen');
if (!SDL.addedResizeListener) {
SDL.addedResizeListener = true;