aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/sdl
diff options
context:
space:
mode:
Diffstat (limited to 'backends/platform/sdl')
-rw-r--r--backends/platform/sdl/sdl.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp
index 98b1feba6d..c4e376fe54 100644
--- a/backends/platform/sdl/sdl.cpp
+++ b/backends/platform/sdl/sdl.cpp
@@ -396,7 +396,14 @@ Common::WriteStream *OSystem_SDL::createConfigWriteStream() {
}
void OSystem_SDL::setWindowCaption(const char *caption) {
- SDL_WM_SetCaption(caption, caption);
+ Common::String cap(caption);
+
+ // Filter out any non-ASCII characters, replacing them by question marks.
+ // At some point, we may wish to allow LATIN 1 or UTF-8.
+ for (uint i = 0; i < cap.size(); ++i)
+ if ((byte)cap[i] > 0x7F)
+ cap.setChar('?', i);
+ SDL_WM_SetCaption(cap.c_str(), cap.c_str());
}
bool OSystem_SDL::hasFeature(Feature f) {