apr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From field...@apache.org
Subject cvs commit: apr/misc/unix getopt.c
Date Sun, 28 Jan 2001 08:59:16 GMT
fielding    01/01/28 00:59:16

  Modified:    misc/unix getopt.c
  Log:
  Eliminate warning and redundant exit conditions.
  
  Revision  Changes    Path
  1.31      +9 -7      apr/misc/unix/getopt.c
  
  Index: getopt.c
  ===================================================================
  RCS file: /home/cvs/apr/misc/unix/getopt.c,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- getopt.c	2000/12/21 00:48:54	1.30
  +++ getopt.c	2001/01/28 08:59:15	1.31
  @@ -209,7 +209,7 @@
   					  int *optch, const char **optarg)
   {
       const char *p;
  -    int i, len;
  +    int i;
   
       /* Let the calling program reset option processing. */
       if (os->reset) {
  @@ -239,15 +239,17 @@
   	p = os->argv[os->ind++] + 1;
   	if (*p == '-' && p[1] != '\0') {        /* Long option */
   	    /* Search for the long option name in the caller's table. */
  +	    int len = 0;
  +
   	    p++;
  -	    for (i = 0; opts[i].optch != 0; i++) {
  +	    for (i = 0; ; i++) {
  +	        if (opts[i].optch == 0)             /* No match */
  +		    return serr(os, "invalid option", p - 2, APR_BADCH);
   		len = strlen(opts[i].name);
   		if (strncmp(p, opts[i].name, len) == 0
   		    && (p[len] == '\0' || p[len] == '='))
   		    break;
   	    }
  -	    if (opts[i].optch == 0)             /* No match */
  -		return serr(os, "invalid option", p - 2, APR_BADCH);
   	    *optch = opts[i].optch;
   
   	    if (opts[i].has_arg) {
  @@ -277,12 +279,12 @@
        * Now we're in a run of short options, and *p is the next one.
        * Look for it in the caller's table.
        */
  -    for (i = 0; opts[i].optch != 0; i++) {
  +    for (i = 0; ; i++) {
  +	if (opts[i].optch == 0)                     /* No match */
  +	    return cerr(os, "invalid option character", *p, APR_BADCH);
   	if (*p == opts[i].optch)
   	    break;
       }
  -    if (opts[i].optch == 0)                     /* No match */
  -	return cerr(os, "invalid option character", *p, APR_BADCH);
       *optch = *p++;
   
       if (opts[i].has_arg) {
  
  
  

Mime
View raw message