(svn r5684) - Codechange: create an strtolower() function that uses tolower() on a whole string and apply it in the places this was used.
authorDarkvater
Mon, 31 Jul 2006 22:11:34 +0000
changeset 4200 a45420ba0c23
parent 4199 61cb1593cbf9
child 4201 3004bdee457d
(svn r5684) - Codechange: create an strtolower() function that uses tolower() on a whole string and apply it in the places this was used.
fileio.c
gfxinit.c
string.c
string.h
--- a/fileio.c	Mon Jul 31 11:52:39 2006 +0000
+++ b/fileio.c	Mon Jul 31 22:11:34 2006 +0000
@@ -4,11 +4,9 @@
 #include "openttd.h"
 #include "fileio.h"
 #include "functions.h"
+#include "string.h"
 #include "macros.h"
 #include "variables.h"
-#if defined(UNIX) || defined(__OS2__)
-#include <ctype.h> // required for tolower()
-#endif
 
 /*************************************************/
 /* FILE IO ROUTINES ******************************/
@@ -114,20 +112,16 @@
 
 	f = fopen(buf, "rb");
 #if !defined(WIN32)
-	if (f == NULL) {
-		char *s;
-		// Make lower case and try again
-		for (s = buf + strlen(_path.data_dir) - 1; *s != 0; s++)
-			*s = tolower(*s);
+	if (f == NULL) { // Make lower case and try again
+		strtolower(buf + strlen(_path.data_dir) - 1);
 		f = fopen(buf, "rb");
 
 #if defined SECOND_DATA_DIR
-	// tries in the 2nd data directory
+		// tries in the 2nd data directory
 		if (f == NULL) {
 			sprintf(buf, "%s%s", _path.second_data_dir, filename);
-			for (s = buf + strlen(_path.second_data_dir) - 1; *s != 0; s++)
-			*s = tolower(*s);
-		f = fopen(buf, "rb");
+			strtolower(buf + strlen(_path.second_data_dir) - 1);
+			f = fopen(buf, "rb");
 		}
 #endif
 	}
@@ -151,18 +145,14 @@
 	f = fopen(buf, "rb");
 #if !defined(WIN32)
 	if (f == NULL) {
-		char *s;
-		// Make lower case and try again
-		for (s = buf + strlen(_path.data_dir) - 1; *s != 0; s++)
-			*s = tolower(*s);
+		strtolower(buf + strlen(_path.data_dir) - 1);
 		f = fopen(buf, "rb");
 
 #if defined SECOND_DATA_DIR
 		// tries in the 2nd data directory
 		if (f == NULL) {
 			sprintf(buf, "%s%s", _path.second_data_dir, filename);
-			for (s = buf + strlen(_path.second_data_dir) - 1; *s != 0; s++)
-				*s = tolower(*s);
+			strtolower(buf + strlen(_path.second_data_dir) - 1);
 			f = fopen(buf, "rb");
 		}
 #endif
@@ -182,19 +172,15 @@
 	f = fopen(buf, "rb");
 #if !defined(WIN32)
 	if (f == NULL) {
-		char *s;
-		// Make lower case and try again
-		for (s = buf + strlen(_path.data_dir) - 1; *s != 0; s++)
-			*s = tolower(*s);
+		strtolower(buf + strlen(_path.data_dir) - 1);
 		f = fopen(buf, "rb");
 
 #if defined SECOND_DATA_DIR
 	// tries in the 2nd data directory
 		if (f == NULL) {
 			sprintf(buf, "%s%s", _path.second_data_dir, filename);
-			for (s = buf + strlen(_path.second_data_dir) - 1; *s != 0; s++)
-			*s = tolower(*s);
-		f = fopen(buf, "rb");
+			strtolower(buf + strlen(_path.second_data_dir) - 1);
+			f = fopen(buf, "rb");
 		}
 
 	if (f == NULL)
--- a/gfxinit.c	Mon Jul 31 11:52:39 2006 +0000
+++ b/gfxinit.c	Mon Jul 31 22:11:34 2006 +0000
@@ -9,6 +9,7 @@
 #include "spritecache.h"
 #include "table/sprites.h"
 #include "fileio.h"
+#include "string.h"
 #include "newgrf.h"
 #include "md5.h"
 #include "variables.h"
@@ -123,10 +124,7 @@
 
 #if !defined(WIN32)
 	if (f == NULL) {
-		char *s;
-	// make lower case and check again
-		for (s = buf + strlen(_path.data_dir) - 1; *s != '\0'; s++)
-			*s = tolower(*s);
+		strtolower(buf + strlen(_path.data_dir) - 1);
 		f = fopen(buf, "rb");
 	}
 #endif
--- a/string.c	Mon Jul 31 11:52:39 2006 +0000
+++ b/string.c	Mon Jul 31 22:11:34 2006 +0000
@@ -4,6 +4,9 @@
 #include "string.h"
 
 #include <stdarg.h>
+#if defined(UNIX) || defined(__OS2__)
+#include <ctype.h> // required for tolower()
+#endif
 
 void ttd_strlcat(char *dst, const char *src, size_t size)
 {
@@ -63,3 +66,8 @@
 	for (; *str != '\0'; str++)
 		if (!IsValidAsciiChar(*str)) *str = '?';
 }
+
+void strtolower(char *str)
+{
+	for (; *str != '\0'; str++) *str = tolower(*str);
+}
--- a/string.h	Mon Jul 31 11:52:39 2006 +0000
+++ b/string.h	Mon Jul 31 22:11:34 2006 +0000
@@ -29,6 +29,9 @@
  * replaces them with a question mark '?' */
 void str_validate(char *str);
 
+/** Convert the given string to lowercase */
+void strtolower(char *str);
+
 /** Only allow valid ascii-function codes. Filter special codes like BELL and
  * so on [we need a special filter here later]
  * @param key character to be checked