summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vcl/unx/gtk/gtksalframe.cxx10
1 files changed, 8 insertions, 2 deletions
diff --git a/vcl/unx/gtk/gtksalframe.cxx b/vcl/unx/gtk/gtksalframe.cxx
index ad4b00d26927..3f99b8c30d3d 100644
--- a/vcl/unx/gtk/gtksalframe.cxx
+++ b/vcl/unx/gtk/gtksalframe.cxx
@@ -3559,8 +3559,14 @@ void GtkSalFrame::IMHandler::signalIMPreeditChanged( GtkIMContext*, gpointer im_
ExtTextInputAttr sal_attr = ExtTextInputAttr::NONE;
pango_attr_iterator_range (iter, &start, &end);
- if (end == G_MAXINT)
- end = pText ? g_utf8_strlen(pText, -1) : 0;
+ if (start == G_MAXINT || end == G_MAXINT)
+ {
+ auto len = pText ? g_utf8_strlen(pText, -1) : 0;
+ if (end == G_MAXINT)
+ end = len;
+ if (start == G_MAXINT)
+ start = len;
+ }
if (end == start)
continue;