support more bool options
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index 1c74279..3c0fba0 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -612,13 +612,20 @@
         *value = (ival==0) ? false : true;

         return true;

     }

-    if ( StringEqual( str, "true" ) ) {

-        *value = true;

-        return true;

+    static const char* TRUE[] = { "true", "True", "TRUE", 0 };

+    static const char* FALSE[] = { "false", "False", "FALSE", 0 };

+

+    for (int i = 0; TRUE[i]; ++i) {

+        if (StringEqual(str, TRUE[i])) {

+            *value = true;

+            return true;

+        }

     }

-    else if ( StringEqual( str, "false" ) ) {

-        *value = false;

-        return true;

+    for (int i = 0; FALSE[i]; ++i) {

+        if (StringEqual(str, FALSE[i])) {

+            *value = false;

+            return true;

+        }

     }

     return false;

 }