aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorFilippos Karapetis2009-03-13 07:56:06 +0000
committerFilippos Karapetis2009-03-13 07:56:06 +0000
commit091652376323a54a55327d114c0da994ec859d80 (patch)
treeb9565cdaf9d1d637d74854ae16265e76eff5f4f8 /engines/sci/engine
parentf4eb159eb8f96bc9f50d5067f76c113bf0532541 (diff)
downloadscummvm-rg350-091652376323a54a55327d114c0da994ec859d80.tar.gz
scummvm-rg350-091652376323a54a55327d114c0da994ec859d80.tar.bz2
scummvm-rg350-091652376323a54a55327d114c0da994ec859d80.zip
Added an explanatory comment for commit #39368
svn-id: r39369
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/kstring.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/engines/sci/engine/kstring.cpp b/engines/sci/engine/kstring.cpp
index c637826d22..1bcde36a9c 100644
--- a/engines/sci/engine/kstring.cpp
+++ b/engines/sci/engine/kstring.cpp
@@ -414,6 +414,10 @@ static int is_print_str(char *str) {
if (len == 0) return 1;
while (*str) {
+ // We're ANDing the string with 0xFF to prevent a situation
+ // where MSVC could sometimes falsely parse the character as
+ // multibyte/Unicode, thereby overflowing an assertion inside
+ // isprint(). This occurs after the intro of LSL5, for example.
if (isprint((*str & 0xFF))) printable++;
str++;
}