From c21f87836e9f292c8d6589ece03f6ccdc40dafc5 Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Sun, 7 Aug 2011 11:57:40 +0200 Subject: PSP: Pass the stream as reference to PngLoader. --- backends/platform/psp/image_viewer.cpp | 2 +- backends/platform/psp/png_loader.cpp | 10 ++++------ backends/platform/psp/png_loader.h | 4 ++-- backends/platform/psp/pspkeyboard.cpp | 2 +- 4 files changed, 8 insertions(+), 10 deletions(-) (limited to 'backends/platform') 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]); -- cgit v1.2.3