version 1.4.46b
[polyglot.git] / util.c
diff --git a/util.c b/util.c
index a5af117..32413ab 100644 (file)
--- a/util.c
+++ b/util.c
@@ -316,6 +316,44 @@ bool my_string_case_equal(const char string_1[], const char string_2[]) {
    return FALSE;\r
 }\r
 \r
+// my_strtolower()\r
+\r
+void my_string_tolower(char *dst, const char *src){\r
+  int c;\r
+  ASSERT(src!=NULL);\r
+  ASSERT(dst!=NULL);\r
+  while((c=*(src++))){\r
+    *dst=tolower(c);\r
+    dst++;\r
+  }\r
+  *(dst++)='\0';\r
+}\r
+\r
+// my_string_case_contains()\r
+\r
+const char* my_string_case_contains(const char string_1[], const char string_2[]){\r
+   \r
+   char tmp1[StringSize];\r
+   char tmp2[StringSize];\r
+   char *where;\r
+\r
+\r
+   ASSERT(string_1!=NULL);\r
+   ASSERT(string_2!=NULL);\r
+\r
+   my_string_tolower(tmp1,string_1);\r
+   my_string_tolower(tmp2,string_2);\r
+\r
+   where=strstr(tmp1,tmp2);\r
+   if(where){\r
+      return string_1+(where-tmp1);\r
+   }\r
+   return NULL;\r
+\r
+  \r
+}\r
+\r
+\r
 // my_strdup()\r
 \r
 char * my_strdup(const char string[]) {\r
@@ -355,6 +393,8 @@ void my_string_set(const char * * variable, const char string[]) {
    *variable = my_strdup(string);\r
 }\r
 \r
+// now_real()\r
+\r
 double now_real() {\r
 #ifndef _WIN32\r
    struct timeval tv[1];\r