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