aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backends/platform/sdl/sdl.cpp10
-rw-r--r--backends/platform/sdl/sdl.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp
index e4726dcd16..105a232b77 100644
--- a/backends/platform/sdl/sdl.cpp
+++ b/backends/platform/sdl/sdl.cpp
@@ -768,3 +768,13 @@ int SDL_SetColorKey_replacement(SDL_Surface *surface, Uint32 flag, Uint32 key) {
}
#endif
+char *OSystem_SDL::convertEncoding(const char *to, const char *from, const char *string, size_t length) {
+#if SDL_VERSION_ATLEAST(2, 0, 0)
+ debug("Trying SDL...");
+ return SDL_iconv_string(to, from, string, length + 1);
+#else
+ debug("SDL isn't available");
+ return nullptr;
+#endif // SDL_VERSION_ATLEAST(2, 0, 0)
+}
+
diff --git a/backends/platform/sdl/sdl.h b/backends/platform/sdl/sdl.h
index 521e67a915..ccbaeddb6d 100644
--- a/backends/platform/sdl/sdl.h
+++ b/backends/platform/sdl/sdl.h
@@ -157,6 +157,8 @@ protected:
virtual bool setGraphicsMode(int mode);
virtual int getGraphicsMode() const;
#endif
+protected:
+ virtual char *convertEncoding(const char *to, const char *from, const char *string, size_t length);
};
#endif