From 2e3465d3bdf0fa1e7df779cbd19fc90187574ae8 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sun, 21 Nov 2021 07:37:26 +0100 Subject: Remove abort if font is not available --- depends/mglpp | 2 +- src/ResourceLoader.cpp | 6 ++++-- src/Text.cpp | 3 +++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/depends/mglpp b/depends/mglpp index c56af6c..3a924a2 160000 --- a/depends/mglpp +++ b/depends/mglpp @@ -1 +1 @@ -Subproject commit c56af6cf176671182e42afc27ac4392fb13b2c4a +Subproject commit 3a924a2c5487b8d1785633ddba4f320a82a04cc3 diff --git a/src/ResourceLoader.cpp b/src/ResourceLoader.cpp index 89ae510..9e8a884 100644 --- a/src/ResourceLoader.cpp +++ b/src/ResourceLoader.cpp @@ -111,19 +111,21 @@ namespace QuickMedia::FontLoader { if(!successfully_loaded_file) { fprintf(stderr, "Warning: Failed to load font file: %s\n", font_file_name.c_str()); - abort(); } mapped_file = new_memory_mapped_file.get(); font_file_cache[(unsigned int)font_type] = std::move(new_memory_mapped_file); } + if(!mapped_file->data()) { + return nullptr; + } + mgl::Font *font = font_cache[(unsigned int)font_type][character_size].get(); if(!font) { auto new_font = std::make_unique(); if(!new_font->load_from_file(*mapped_file, character_size)) { fprintf(stderr, "Warning: Failed to load font at character size %u\n", character_size); - abort(); } font = new_font.get(); diff --git a/src/Text.cpp b/src/Text.cpp index 39e5bc4..53118b8 100644 --- a/src/Text.cpp +++ b/src/Text.cpp @@ -1115,6 +1115,9 @@ namespace QuickMedia continue; mgl::Font *font = FontLoader::get_font(font_types[i], characterSize); + if(!font) + continue; + mgl::Texture font_texture = font->get_texture(); vertex_buffers[i].set_texture(&font_texture); vertex_buffers[i].set_position(pos); -- cgit v1.2.3