From 0908ea1059c337e6e3a314ae46d3b0f06596a0b1 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Sat, 14 Nov 2015 16:42:43 +0100 Subject: [PATCH 3/7] A bit better error handling. --- src/basecode/angelcodefont.cpp | 6 +++++- src/basecode/toolkit.cpp | 6 ++++++ src/core/fileutils.cpp | 2 ++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/basecode/angelcodefont.cpp b/src/basecode/angelcodefont.cpp index 77d4d9a..a675f25 100644 --- a/src/basecode/angelcodefont.cpp +++ b/src/basecode/angelcodefont.cpp @@ -200,11 +200,15 @@ void ACFont::load(FILE *handle) void ACFont::load(const char *filename) { File * f = new File(fopen(filename, "rb")); - if (f) + if (f->f) { load(f); delete f; } + else + { + perror(filename); + } } void ACFont::load(File * f) diff --git a/src/basecode/toolkit.cpp b/src/basecode/toolkit.cpp index aa25363..7dc28eb 100644 --- a/src/basecode/toolkit.cpp +++ b/src/basecode/toolkit.cpp @@ -215,7 +215,10 @@ static void do_loadtexture(const char * aFilename, int clamp = 1) unsigned char *data = stbi_load(aFilename, &x, &y, &n, 4); if (data == NULL) + { + perror(aFilename); return; + } int l, w, h; w = x; @@ -409,7 +412,10 @@ SDL_Cursor *load_cursor(const char *aFilename, int hotx, int hoty) unsigned char *imgdata = stbi_load(aFilename, &ix, &iy, &n, 4); if (imgdata == NULL) + { + perror(aFilename); return NULL; + } if (ix > 32 || iy > 32) { diff --git a/src/core/fileutils.cpp b/src/core/fileutils.cpp index e9678ea..a28b06e 100644 --- a/src/core/fileutils.cpp +++ b/src/core/fileutils.cpp @@ -38,6 +38,8 @@ File::File(FILE *aFileHandle) File::File(const char *aFilename, const char *aFileOpenTypes) { f = fopen(aFilename, aFileOpenTypes); + if (!f) + perror(aFilename); } File::~File() -- 2.5.0