diff options
author | Willem Jan Palenstijn | 2012-02-21 11:33:32 -0800 |
---|---|---|
committer | Willem Jan Palenstijn | 2012-02-21 11:33:32 -0800 |
commit | 9ffe3e11d905b5af194dd3265e2fe11545bf5020 (patch) | |
tree | f9fb97d7eb2368d0123aa3bd9d91c560cded3315 /common/util.cpp | |
parent | 80b34398174973b6d70673fce94a8a1f670c3f4d (diff) | |
parent | 02ebd552141173775b9462f4414083d3b8d49a80 (diff) | |
download | scummvm-rg350-9ffe3e11d905b5af194dd3265e2fe11545bf5020.tar.gz scummvm-rg350-9ffe3e11d905b5af194dd3265e2fe11545bf5020.tar.bz2 scummvm-rg350-9ffe3e11d905b5af194dd3265e2fe11545bf5020.zip |
Merge pull request #182 from fingolfin/forbid-ctype
ALL: Avoid using is* macros from ctype.h
Diffstat (limited to 'common/util.cpp')
-rw-r--r-- | common/util.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/common/util.cpp b/common/util.cpp index 1c4df8b6cd..3f97308d8e 100644 --- a/common/util.cpp +++ b/common/util.cpp @@ -19,6 +19,15 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +#define FORBIDDEN_SYMBOL_EXCEPTION_isalnum +#define FORBIDDEN_SYMBOL_EXCEPTION_isalpha +#define FORBIDDEN_SYMBOL_EXCEPTION_isdigit +#define FORBIDDEN_SYMBOL_EXCEPTION_isnumber +#define FORBIDDEN_SYMBOL_EXCEPTION_islower +#define FORBIDDEN_SYMBOL_EXCEPTION_isspace +#define FORBIDDEN_SYMBOL_EXCEPTION_isupper + + #include "common/util.h" #include "common/translation.h" #include "common/config-manager.h" @@ -406,4 +415,38 @@ void updateGameGUIOptions(const String &options, const String &langOption) { } } +#define ENSURE_ASCII_CHAR(c) \ + if (c < 0 || c > 127) \ + return false + +bool isAlnum(int c) { + ENSURE_ASCII_CHAR(c); + return isalnum((byte)c); +} + +bool isAlpha(int c) { + ENSURE_ASCII_CHAR(c); + return isalpha((byte)c); +} + +bool isDigit(int c) { + ENSURE_ASCII_CHAR(c); + return isdigit((byte)c); +} + +bool isLower(int c) { + ENSURE_ASCII_CHAR(c); + return islower((byte)c); +} + +bool isSpace(int c) { + ENSURE_ASCII_CHAR(c); + return isspace((byte)c); +} + +bool isUpper(int c) { + ENSURE_ASCII_CHAR(c); + return isupper((byte)c); +} + } // End of namespace Common |