diff options
author | Christoph Mallon | 2011-08-07 11:57:40 +0200 |
---|---|---|
committer | Christoph Mallon | 2011-08-07 15:19:08 +0200 |
commit | c21f87836e9f292c8d6589ece03f6ccdc40dafc5 (patch) | |
tree | 34685c110f22581c9d7f95e960fdcc01f1c0c562 | |
parent | a5675c3dbe799acf6ced70ba9e83cdd88252bce9 (diff) | |
download | scummvm-rg350-c21f87836e9f292c8d6589ece03f6ccdc40dafc5.tar.gz scummvm-rg350-c21f87836e9f292c8d6589ece03f6ccdc40dafc5.tar.bz2 scummvm-rg350-c21f87836e9f292c8d6589ece03f6ccdc40dafc5.zip |
PSP: Pass the stream as reference to PngLoader.
-rw-r--r-- | backends/platform/psp/image_viewer.cpp | 2 | ||||
-rw-r--r-- | backends/platform/psp/png_loader.cpp | 10 | ||||
-rw-r--r-- | backends/platform/psp/png_loader.h | 4 | ||||
-rw-r--r-- | backends/platform/psp/pspkeyboard.cpp | 2 |
4 files changed, 8 insertions, 10 deletions
diff --git a/backends/platform/psp/image_viewer.cpp b/backends/platform/psp/image_viewer.cpp index dbc7cc48c1..98205ddee9 100644 --- a/backends/platform/psp/image_viewer.cpp +++ b/backends/platform/psp/image_viewer.cpp @@ -69,7 +69,7 @@ bool ImageViewer::load(int imageNum) { assert(_renderer); // Load a PNG into our buffer and palette. Size it by the actual size of the image - PngLoader image(file, *_buffer, *_palette, Buffer::kSizeBySourceSize); + PngLoader image(*file, *_buffer, *_palette, Buffer::kSizeBySourceSize); PngLoader::Status status = image.allocate(); // allocate the buffers for the file diff --git a/backends/platform/psp/png_loader.cpp b/backends/platform/psp/png_loader.cpp index 16377539c8..4de13d1e73 100644 --- a/backends/platform/psp/png_loader.cpp +++ b/backends/platform/psp/png_loader.cpp @@ -78,7 +78,7 @@ PngLoader::Status PngLoader::allocate() { bool PngLoader::load() { DEBUG_ENTER_FUNC(); // Try to load the image - _file->seek(0); // Go back to start + _file.seek(0); // Go back to start if (!loadImageIntoBuffer()) { PSP_DEBUG_PRINT("failed to load image\n"); @@ -99,11 +99,9 @@ void PngLoader::warningFn(png_structp png_ptr, png_const_charp warning_msg) { // Read function for png library to be able to read from our SeekableReadStream // void PngLoader::libReadFunc(png_structp pngPtr, png_bytep data, png_size_t length) { - Common::SeekableReadStream *file; + Common::SeekableReadStream &file = *(Common::SeekableReadStream *)pngPtr->io_ptr; - file = (Common::SeekableReadStream *)pngPtr->io_ptr; - - file->read(data, length); + file.read(data, length); } bool PngLoader::basicImageLoad() { @@ -120,7 +118,7 @@ bool PngLoader::basicImageLoad() { return false; } // Set the png lib to use our read function - png_set_read_fn(_pngPtr, (void *)_file, libReadFunc); + png_set_read_fn(_pngPtr, &_file, libReadFunc); unsigned int sig_read = 0; diff --git a/backends/platform/psp/png_loader.h b/backends/platform/psp/png_loader.h index 0ff9d8a65d..48a3220d78 100644 --- a/backends/platform/psp/png_loader.h +++ b/backends/platform/psp/png_loader.h @@ -34,7 +34,7 @@ private: static void warningFn(png_structp png_ptr, png_const_charp warning_msg); static void libReadFunc(png_structp pngPtr, png_bytep data, png_size_t length); - Common::SeekableReadStream *_file; + Common::SeekableReadStream &_file; Buffer *_buffer; Palette *_palette; @@ -57,7 +57,7 @@ public: BAD_FILE }; - PngLoader(Common::SeekableReadStream *file, Buffer &buffer, Palette &palette, + PngLoader(Common::SeekableReadStream &file, Buffer &buffer, Palette &palette, Buffer::HowToSize sizeBy = Buffer::kSizeByTextureSize) : _file(file), _buffer(&buffer), _palette(&palette), _width(0), _height(0), _paletteSize(0), diff --git a/backends/platform/psp/pspkeyboard.cpp b/backends/platform/psp/pspkeyboard.cpp index 43c4cada15..66efe9145d 100644 --- a/backends/platform/psp/pspkeyboard.cpp +++ b/backends/platform/psp/pspkeyboard.cpp @@ -298,7 +298,7 @@ bool PSPKeyboard::load() { goto ERROR; } - PngLoader image(file, _buffers[i], _palettes[i]); + PngLoader image(*file, _buffers[i], _palettes[i]); if (image.allocate() != PngLoader::OK) { PSP_ERROR("Failed to allocate memory for keyboard image %s\n", _guiStrings[i]); |