diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/library_sdl.js | 10 | ||||
-rw-r--r-- | src/preamble.js | 4 |
2 files changed, 6 insertions, 8 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js index e741faeb..3f5a8a87 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -478,14 +478,8 @@ mergeInto(LibraryManager.library, { IMG_Load: function(filename) { filename = Pointer_stringify(filename); - var format = filename.split('.').slice(-1)[0]; - var file = FS.analyzePath(filename); - if (!file || !file.object) { - console.log('Cannot find file: ' + filename); - return 0; - } - var data = file.object.contents; - var raw = Browser.decodeImage(data, format); + var raw = preloadedImages[filename]; + assert(raw, 'Cannot find preloaded image ' + filename); var surf = SDL.makeSurface(raw.width, raw.height, 0); // XXX Extremely inefficient! for (var i = 0; i < raw.width*raw.height*4; i++) { diff --git a/src/preamble.js b/src/preamble.js index 1e68295f..1c599836 100644 --- a/src/preamble.js +++ b/src/preamble.js @@ -892,5 +892,9 @@ function removeRunDependency() { if (runDependencies == 0) run(); } +// Preloading + +var preloadedImages = {}; // maps url to image data + // === Body === |