ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/common/badarg.c
(Generate patch)

Comparing ray/src/common/badarg.c (file contents):
Revision 2.6 by schorsch, Fri Nov 14 17:22:06 2003 UTC vs.
Revision 2.7 by greg, Sun Jun 10 17:50:29 2012 UTC

# Line 17 | Line 17 | static const char      RCSid[] = "$Id$";
17   int
18   badarg(         /* check argument list */
19   int     ac,
20 < register char   **av,
21 < register char   *fl
20 > char    **av,
21 > char    *fl
22   )
23   {
24 <        register int  i;
24 >        int     i;
25 >        char    *s;
26  
27          if (fl == NULL)
28                  fl = "";                /* no arguments? */
29          for (i = 1; *fl; i++,av++,fl++) {
30                  if (i > ac || *av == NULL)
31                          return(-1);
32 +                s = *av;
33                  switch (*fl) {
34                  case 's':               /* string */
35 <                        if (**av == '\0' || isspace(**av))
35 >                        while (isspace(*s))
36 >                                ++s;
37 >                        if (*s == '\0')
38                                  return(i);
39 +                        while (*s)
40 +                                if (!isascii(*s++))
41 +                                        return(i);
42                          break;
43                  case 'i':               /* integer */
44 <                        if (!isintd(*av, " \t\r\n"))
44 >                        if (!isintd(s, " \t\r\n"))
45                                  return(i);
46                          break;
47                  case 'f':               /* float */
48 <                        if (!isfltd(*av, " \t\r\n"))
48 >                        if (!isfltd(s, " \t\r\n"))
49                                  return(i);
50                          break;
51                  default:                /* bad call! */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines