From: Christian Schmitt Date: Sun, 24 Feb 2013 21:03:29 +0000 (+0100) Subject: apt_loader.cxx: update version parsing to 4-digit versions, X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=6ffdb1bc545c2752788747faa2af723b1db4da1e;p=flightgear.git apt_loader.cxx: update version parsing to 4-digit versions, some tweaks according to the spec. --- diff --git a/src/Airports/apt_loader.cxx b/src/Airports/apt_loader.cxx index f4ad7793a..f03a253fa 100644 --- a/src/Airports/apt_loader.cxx +++ b/src/Airports/apt_loader.cxx @@ -105,10 +105,10 @@ public: line = tmp; // string copy, ack line_num++; - if ( !line.size() || isspace(tmp[0])) { + if ( line.empty() || isspace(tmp[0]) || tmp[0] == '#' ) { continue; } - + if (line.size() >= 3) { char *p = (char *)memchr(tmp, ' ', 3); if ( p ) @@ -116,16 +116,16 @@ public: } line_id = atoi(tmp); - if ( tmp[0] == 'I' ) { - // First line, indicates IBM (i.e. DOS line endings I - // believe.) + if ( tmp[0] == 'I' || tmp[0] == 'A' ) { + // First line, indicates IBM ("I") or Macintosh ("A") + // line endings. // move past this line and read and discard the next line // which is the version and copyright information in.getline(tmp, 2048); - // vector vers_token = simgear::strutils::split( tmp ); - if ( strlen(tmp) > 4 ) { - char *p = (char *)memchr(tmp, ' ', 4); + + if ( strlen(tmp) > 5 ) { + char *p = (char *)memchr(tmp, ' ', 5); if ( p ) *p = 0; }