Clarify IsNameStartChar() - resolve issue 250
diff --git a/tinyxml2.h b/tinyxml2.h
index 530160f..7f997aa 100755
--- a/tinyxml2.h
+++ b/tinyxml2.h
@@ -552,9 +552,14 @@
}
inline static bool IsNameStartChar( unsigned char ch ) {
- return ( ( ch < 128 ) ? isalpha( ch ) : 1 )
- || ch == ':'
- || ch == '_';
+ if ( ch >= 128 ) {
+ // This is a heuristic guess in attempt to not implement Unicode-aware isalpha()
+ return true;
+ }
+ if ( isalpha( ch ) ) {
+ return true;
+ }
+ return ch == ':' || ch == '_';
}
inline static bool IsNameChar( unsigned char ch ) {