From 0908ea1059c337e6e3a314ae46d3b0f06596a0b1 Mon Sep 17 00:00:00 2001
From: Lubomir Rintel <lkundrak@v3.sk>
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