IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 27798


Ignore:
Timestamp:
Apr 28, 2010, 2:49:31 PM (16 years ago)
Author:
eugene
Message:

check for numerical arguments to for loop

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/opihi/cmd.basic/run_for.c

    r16464 r27798  
    77  int ThisList, depth, i, done, status, found, NLINES, j;
    88  double start, end, delta;
    9   char *input;
     9  char *input, *endptr;
    1010  double value, sign;
    1111  Macro loop;
     
    1616  }
    1717
    18   start = atof (argv[2]);
    19   end   = atof (argv[3]);
     18  start = strtod (argv[2], &endptr);
     19  if (*endptr) {
     20    gprint (GP_ERR, "for loop starting value must be numerical (%s)\n", argv[2]);
     21    return (FALSE);
     22  }
     23
     24  end = strtod (argv[3], &endptr);
     25  if (*endptr) {
     26    gprint (GP_ERR, "for loop ending value must be numerical (%s)\n", argv[3]);
     27    return (FALSE);
     28  }
     29
    2030  delta = 1.0;
    21   if (argc == 5) delta = atof (argv[4]);
     31  if (argc == 5) {
     32    delta = strtod (argv[4], &endptr);
     33    if (*endptr) {
     34      gprint (GP_ERR, "for loop delta value must be numerical (%s)\n", argv[4]);
     35      return (FALSE);
     36    }
     37  }
    2238  sign = SIGN(delta);
    2339
Note: See TracChangeset for help on using the changeset viewer.