summaryrefslogtreecommitdiff
path: root/indra/llwindow
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2022-04-18 20:39:18 +0300
committerAndrey Lihatskiy <alihatskiy@productengine.com>2022-04-18 20:39:18 +0300
commit65ea8e1351c548b650eea4bd2ddef02b853c933d (patch)
tree71f06c51e20e4818a66d200e170f5d6f42a8b17c /indra/llwindow
parent3fb9993a4a74c19b872bb96ed4878cd7b7143208 (diff)
parentd031662435d97101411ae990ed85d6e001ab668a (diff)
Merge branch 'master' into DRTVWR-483
Diffstat (limited to 'indra/llwindow')
-rw-r--r--indra/llwindow/llwindowwin32.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp
index f303d1bb21..a32346bfd3 100644
--- a/indra/llwindow/llwindowwin32.cpp
+++ b/indra/llwindow/llwindowwin32.cpp
@@ -4262,7 +4262,8 @@ BOOL LLWindowWin32::handleImeRequests(WPARAM request, LPARAM param, LRESULT *res
S32 context_offset;
LLWString context = find_context(wtext, preedit, preedit_length, &context_offset);
preedit -= context_offset;
- if (preedit_length)
+ preedit_length = llmin(preedit_length, (S32)context.length() - preedit);
+ if (preedit_length && preedit >= 0)
{
// IMR_DOCUMENTFEED may be called when we have an active preedit.
// We should pass the context string *excluding* the preedit string.