summaryrefslogtreecommitdiff
path: root/src/Hill.cxx
diff options
context:
space:
mode:
authorJohannes Hofmann <johannes.hofmann@gmx.de>2005-05-10 16:12:47 +0000
committerJohannes Hofmann <johannes.hofmann@gmx.de>2005-05-10 16:12:47 +0000
commit701445766d42a37febf833b95714511be2da4793 (patch)
treea3c3827071101c2a4481a4df23350bf03bd646a7 /src/Hill.cxx
parentc8c0d0ac861802f29de2d294c2b33f7b70fd7746 (diff)
make parser more robust
make parser more robust
Diffstat (limited to 'src/Hill.cxx')
-rw-r--r--src/Hill.cxx17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/Hill.cxx b/src/Hill.cxx
index 6df8d34..5dbe226 100644
--- a/src/Hill.cxx
+++ b/src/Hill.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Hill.cxx,v 1.13 2005/05/10 17:16:54 hofmann Exp $"
+// "$Id: Hill.cxx,v 1.14 2005/05/10 18:12:47 hofmann Exp $"
//
// Hill routines.
//
@@ -83,18 +83,21 @@ Hills::load(const char *file) {
while (fgets(buf, sizeof(buf), fp)) {
bp = buf;
+ memset(vals, 0, sizeof(vals));
for (ap = vals; (*ap = strsep(&bp, ",")) != NULL;)
if (++ap >= &vals[10])
break;
- phi = atof(vals[3]) * deg2rad;
- lam = atof(vals[4]) * deg2rad;
-
- height = atof(vals[5]);
+ if (vals[1] && vals[3] && vals[4] && vals[5]) {
+ phi = atof(vals[3]) * deg2rad;
+ lam = atof(vals[4]) * deg2rad;
+
+ height = atof(vals[5]);
- m = new Hill(vals[1], phi, lam, height);
+ m = new Hill(vals[1], phi, lam, height);
- add(m);
+ add(m);
+ }
}
fclose(fp);