X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FUtils%2FImageIO.cpp;h=95f89544c26b062c5751faa1dd310b2fa4d6c4cd;hb=b32cd80b243d77cd80e026c7ae73e33ec39b1de9;hp=8bd5bfc33f3e0ff3f5e119ffd7f55d435c88f2d0;hpb=487fc31578d1fa8d0d2b11fdb59aaca074bce6e2;p=lugaru.git
diff --git a/Source/Utils/ImageIO.cpp b/Source/Utils/ImageIO.cpp
index 8bd5bfc..95f8954 100644
--- a/Source/Utils/ImageIO.cpp
+++ b/Source/Utils/ImageIO.cpp
@@ -28,8 +28,6 @@ along with Lugaru. If not, see .
#include
#include
-extern bool visibleloading;
-
/* These two are needed for screenshot */
extern int kContextWidth;
extern int kContextHeight;
@@ -51,9 +49,7 @@ ImageRec::~ImageRec()
bool load_image(const char *file_name, ImageRec &tex)
{
- if (visibleloading) {
- Game::LoadingScreen();
- }
+ Game::LoadingScreen();
if ( tex.data == NULL ) {
return false;
@@ -104,10 +100,13 @@ static bool load_jpg(const char *file_name, ImageRec &tex)
struct my_error_mgr jerr;
JSAMPROW buffer[1]; /* Output row buffer */
int row_stride; /* physical row width in output buffer */
+ errno = 0;
FILE *infile = fopen(file_name, "rb");
- if (infile == NULL)
+ if (infile == NULL) {
+ perror((std::string("Couldn't open file ") + file_name).c_str());
return false;
+ }
cinfo.err = jpeg_std_error(&jerr.pub);
jerr.pub.error_exit = my_error_exit;
@@ -154,10 +153,11 @@ static bool load_png(const char *file_name, ImageRec &tex)
int bit_depth, color_type, interlace_type;
bool retval = false;
png_byte **row_pointers = NULL;
+ errno = 0;
FILE *fp = fopen(file_name, "rb");
if (fp == NULL) {
- cerr << file_name << " not found" << endl;
+ perror((std::string("Couldn't open file ") + file_name).c_str());
return false;
}
@@ -237,9 +237,12 @@ static bool save_screenshot_png(const char *file_name)
png_infop info_ptr = NULL;
bool retval = false;
+ errno = 0;
fp = fopen(file_name, "wb");
- if (fp == NULL)
+ if (fp == NULL) {
+ perror((std::string("Couldn't open file ") + file_name).c_str());
return false;
+ }
png_bytep *row_pointers = new png_bytep[kContextHeight];
png_bytep screenshot = new png_byte[kContextWidth * kContextHeight * 3];