X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=image_input.cpp;fp=image_input.cpp;h=92c58eca1956bfa595f6d04ba84b0157057b1b8c;hb=6c6b3789c78670e75a72edf743d204ab056bd9e0;hp=5c9d7966cd7404b395ddab4ecaf40523c9215549;hpb=f1182ee6109998c95484191a046033b32cb65828;p=nageru diff --git a/image_input.cpp b/image_input.cpp index 5c9d796..92c58ec 100644 --- a/image_input.cpp +++ b/image_input.cpp @@ -37,8 +37,6 @@ struct SwsContext; using namespace std; -namespace { - string search_for_file(const string &filename) { // Look for the file in all theme_dirs until we find one; @@ -61,18 +59,25 @@ string search_for_file(const string &filename) for (const string &error : errors) { fprintf(stderr, "%s\n", error.c_str()); } - fprintf(stderr, "Couldn't find %s in any directory in --theme-dirs, exiting.\n", - filename.c_str()); - exit(1); + return ""; } -} // namespace +string search_for_file_or_die(const string &filename) +{ + string pathname = search_for_file(filename); + if (pathname.empty()) { + fprintf(stderr, "Couldn't find %s in any directory in --theme-dirs, exiting.\n", + filename.c_str()); + exit(1); + } + return pathname; +} ImageInput::ImageInput(const string &filename) : movit::FlatInput({movit::COLORSPACE_sRGB, movit::GAMMA_sRGB}, movit::FORMAT_RGBA_POSTMULTIPLIED_ALPHA, GL_UNSIGNED_BYTE, 1280, 720), // Resolution will be overwritten. filename(filename), - pathname(search_for_file(filename)), + pathname(search_for_file_or_die(filename)), current_image(load_image(filename, pathname)) { if (current_image == nullptr) { // Could happen even though search_for_file() returned.