X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Ftiming%2Ftimezone.cxx;h=0b2e74c6c5ad0094a2fcaff6841b5c78f2a56fe8;hb=a25e859fa773c9463e4bec042b8d0b39041c29ad;hp=60ef96de95c3f98e95bc36638435476fcb9342b6;hpb=dcb95d131bc6aef1abe25d1f415e309f06e52436;p=simgear.git diff --git a/simgear/timing/timezone.cxx b/simgear/timing/timezone.cxx index 60ef96de..0b2e74c6 100644 --- a/simgear/timing/timezone.cxx +++ b/simgear/timing/timezone.cxx @@ -29,6 +29,9 @@ #include #include #include + +#include + #include "timezone.h" SGTimeZone::SGTimeZone(float la, float lo, char* cc, char* desc) : @@ -126,8 +129,9 @@ SGTimeZoneContainer::SGTimeZoneContainer(const char *filename) char buffer[256]; FILE* infile = fopen(filename, "rb"); if (!(infile)) { - fprintf(stderr, "Unable to open file %s\n", filename); - exit(1); + string e = "Unable to open time zone file '"; + throw sg_exception(e + filename + '\''); + } else { errno = 0; @@ -151,6 +155,7 @@ SGTimeZoneContainer::SGTimeZoneContainer(const char *filename) errno = 0; } } + fclose(infile); } SGTimeZoneContainer::~SGTimeZoneContainer()