From 3c61cf9ff02dcebc22f97778d4806db144c15eb9 Mon Sep 17 00:00:00 2001
From: Lubomir Rintel <lkundrak@v3.sk>
Date: Thu, 12 Nov 2015 10:31:17 +0100
Subject: [PATCH 1/7] Don't crash on file open failures
---
src/basecode/angelcodefont.cpp | 2 +-
src/core/simutils.cpp | 2 +-
src/include/fileutils.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/basecode/angelcodefont.cpp b/src/basecode/angelcodefont.cpp
index d109d0e..77d4d9a 100644
--- a/src/basecode/angelcodefont.cpp
+++ b/src/basecode/angelcodefont.cpp
@@ -209,7 +209,7 @@ void ACFont::load(const char *filename)
void ACFont::load(File * f)
{
- if (f == NULL) return;
+ if (f->f == NULL) return;
if (f->readbyte() != 0x42) return; // B
if (f->readbyte() != 0x4d) return; // M
if (f->readbyte() != 0x46) return; // F
diff --git a/src/core/simutils.cpp b/src/core/simutils.cpp
index 3f90dc9..bc8a0bb 100644
--- a/src/core/simutils.cpp
+++ b/src/core/simutils.cpp
@@ -461,7 +461,7 @@ void do_flush_boxloadqueue()
gBoxLoadQueue.pop_back();
gBoxBeingLoaded = item->mBox;
File *bf = do_preload_box(item->mFilename);
- if (bf == NULL)
+ if (bf->f == NULL)
{
// pretty catastrophic, but we'll do what we can..
gBoxBeingLoaded = NULL;
diff --git a/src/include/fileutils.h b/src/include/fileutils.h
index 04f164e..bd1ca61 100644
--- a/src/include/fileutils.h
+++ b/src/include/fileutils.h
@@ -28,8 +28,8 @@ using namespace std;
class File
{
- FILE * f;
public:
+ FILE * f;
File();
File(FILE *aFileHandle);
File(const char *aFilename, const char *aFileOpenTypes);
--
2.5.0