rnd-20070425-1-src
[rocksndiamonds.git] / src / libgame / misc.c
index b93c9bdeea4ee03056530b61aeced0a1c8d0d978..f94cc376097e2e040d790c43c784c34bb0d524ae 100644 (file)
@@ -950,6 +950,19 @@ void checked_free(void *ptr)
     free(ptr);
 }
 
+void clear_mem(void *ptr, unsigned long size)
+{
+#if defined(PLATFORM_WIN32)
+  /* for unknown reason, memset() sometimes crashes when compiled with MinGW */
+  char *cptr = (char *)ptr;
+
+  while (size--)
+    *cptr++ = 0;
+#else
+  memset(ptr, 0, size);
+#endif
+}
+
 
 /* ------------------------------------------------------------------------- */
 /* various helper functions                                                  */
@@ -1549,9 +1562,13 @@ int get_integer_from_string(char *s)
 
   if (result == -1)
   {
-    if (strEqual(s_lower, "false"))
+    if (strEqual(s_lower, "false") ||
+       strEqual(s_lower, "no") ||
+       strEqual(s_lower, "off"))
       result = 0;
-    else if (strEqual(s_lower, "true"))
+    else if (strEqual(s_lower, "true") ||
+            strEqual(s_lower, "yes") ||
+            strEqual(s_lower, "on"))
       result = 1;
     else
       result = atoi(s);