diff --git a/src/anbox/platform/sdl/platform.cpp b/src/anbox/platform/sdl/platform.cpp index 9d7c1d57cb039a0ba50169653e8da992c69c4fad..d6b733f40e67887f045c9777ec0492540b0ce6cf 100644 --- a/src/anbox/platform/sdl/platform.cpp +++ b/src/anbox/platform/sdl/platform.cpp @@ -298,7 +298,7 @@ void Platform::process_events() { break; case SDL_TEXTINPUT: WARNING("Input Event TEXT=%s TYPE=%d WINDOWID=%d", event.text.text, event.type, event.text.windowID); - if (text_input_fliter(event.text.text)) { + if (text_input_fliter(reinterpret_cast(event.text.text))) { send(ime_fd_, event.text.text, strlen(event.text.text), 0); } break; @@ -310,7 +310,7 @@ void Platform::process_events() { } } -bool Platform::text_input_fliter(const char* text) { +bool Platform::text_input_fliter(const unsigned char* text) { return text[0] > 0x7f || (input_flag == 0 && ((text[0] <= 'Z' && text[0] >= 'A') || (text[0] <= 'z' && text[0] >= 'a'))); } diff --git a/src/anbox/platform/sdl/platform.h b/src/anbox/platform/sdl/platform.h index ddeb3e3806ff78e647f3522e2f7c83c5e7b41f81..5a4b5a4cd8e49bfa6c3fa38874e8a5a5ad8ad901 100644 --- a/src/anbox/platform/sdl/platform.h +++ b/src/anbox/platform/sdl/platform.h @@ -128,7 +128,7 @@ class Platform : public std::enable_shared_from_this, int ime_socket_ = -1; int input_flag = 0; void create_ime_socket(); - bool text_input_fliter(const char* text); + bool text_input_fliter(const unsigned char* text); int find_touch_slot(int id); void push_slot(std::vector &touch_events, int slot);