Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Sep 2009 07:42:13 +0000 (UTC)
From:      "Andrey A. Chernov" <ache@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r196818 - head/contrib/ee
Message-ID:  <200909040742.n847gD62058267@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ache
Date: Fri Sep  4 07:42:13 2009
New Revision: 196818
URL: http://svn.freebsd.org/changeset/base/196818

Log:
  1) Remove single occurance of HAS_CTYPE ifdef, ctype functions
  used here for a long time and needs their header in anycase.
  2) Add (unsigned char) casts to more ctype macros.
  3) Simplify menu input handling using ctype instead of range unguarded
  hardcoded tricks.

Modified:
  head/contrib/ee/ee.c

Modified: head/contrib/ee/ee.c
==============================================================================
--- head/contrib/ee/ee.c	Fri Sep  4 07:33:17 2009	(r196817)
+++ head/contrib/ee/ee.c	Fri Sep  4 07:42:13 2009	(r196818)
@@ -72,10 +72,7 @@ char *version = "@(#) ee, version "  EE_
 #include <curses.h>
 #endif
 
-#ifdef HAS_CTYPE
 #include <ctype.h>
-#endif
-
 #include <signal.h>
 #include <fcntl.h>
 #include <sys/types.h>
@@ -1973,7 +1970,7 @@ int sensitive;
 		}
 		else
 		{
-			if (toupper(*strng1) != toupper(*strng2))
+			if (toupper((unsigned char)*strng1) != toupper((unsigned char)*strng2))
 				equal = FALSE;
 		}
 		strng1++;
@@ -2445,7 +2442,7 @@ int noverify;
 	if ((text_changes) && (!noverify))
 	{
 		ans = get_string(changes_made_prompt, TRUE);
-		if (toupper(*ans) == toupper(*yes_char))
+		if (toupper((unsigned char)*ans) == toupper((unsigned char)*yes_char))
 			text_changes = FALSE;
 		else
 			return(0);
@@ -2522,7 +2519,7 @@ int warn_if_exists;
 		if ((temp_fp = fopen(file_name, "r")))
 		{
 			tmp_point = get_string(file_exists_prompt, TRUE);
-			if (toupper(*tmp_point) == toupper(*yes_char))
+			if (toupper((unsigned char)*tmp_point) == toupper((unsigned char)*yes_char))
 				write_flag = TRUE;
 			else 
 				write_flag = FALSE;
@@ -3437,14 +3434,13 @@ struct menu_entries menu_list[];
 		if (input == -1)
 			exit(0);
 
-		if (((tolower(input) >= 'a') && (tolower(input) <= 'z')) || 
-		    ((input >= '0') && (input <= '9')))
+		if (isascii(input) && isalnum(input))
 		{
-			if ((tolower(input) >= 'a') && (tolower(input) <= 'z'))
+			if (isalpha(input))
 			{
 				temp = 1 + tolower(input) - 'a';
 			}
-			else if ((input >= '0') && (input <= '9'))
+			else if (isdigit(input))
 			{
 				temp = (2 + 'z' - 'a') + (input - '0');
 			}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200909040742.n847gD62058267>