diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/library_sdl.js | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js index 608f1738..56f6a6ef 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -722,16 +722,15 @@ var LibrarySDL = { surfData.locked++; if (surfData.locked > 1) return 0; - if (!surfData.image) { - surfData.image = surfData.ctx.getImageData(0, 0, surfData.width, surfData.height); - if (surf == SDL.screen) { - var data = surfData.image.data; - var num = data.length; - for (var i = 0; i < num/4; i++) { - data[i*4+3] = 255; // opacity, as canvases blend alpha - } + surfData.image = surfData.ctx.getImageData(0, 0, surfData.width, surfData.height); + if (surf == SDL.screen) { + var data = surfData.image.data; + var num = data.length; + for (var i = 0; i < num/4; i++) { + data[i*4+3] = 255; // opacity, as canvases blend alpha } } + if (SDL.defaults.copyOnLock) { // Copy pixel data to somewhere accessible to 'C/C++' if (surfData.isFlagSet(0x00200000 /* SDL_HWPALETTE */)) { |