commit 6ab4b086ece45ce9f5de58366820503d2ccd2be1
Author: Koji Yokota <[email protected]>
Date: Thu Jun 26 12:25:56 2025 +0900
Debug a possible non-positive pos error
---
src/frontends/qt/GuiInputMethod.cpp | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/src/frontends/qt/GuiInputMethod.cpp
b/src/frontends/qt/GuiInputMethod.cpp
index b18c97b1c6..1e305b0b26 100644
--- a/src/frontends/qt/GuiInputMethod.cpp
+++ b/src/frontends/qt/GuiInputMethod.cpp
@@ -1103,12 +1103,18 @@ void GuiInputMethod::setSurroundingText(const Cursor &
cur) {
++insets_before_cur;
}
- d->im_state_.text_before_ =
- partext.substr(0, *d->cur_pos_ptr_ - insets_before_cur);
- d->im_state_.text_after_ =
- partext.substr(*d->cur_pos_ptr_ - insets_before_cur);
- d->im_state_.surrounding_text_ =
- d->im_state_.text_before_ + d->im_state_.text_after_;
+ if (*d->cur_pos_ptr_ >= insets_before_cur) {
+ d->im_state_.text_before_ =
+ partext.substr(0, *d->cur_pos_ptr_ -
insets_before_cur);
+ d->im_state_.text_after_ =
+ partext.substr(*d->cur_pos_ptr_ -
insets_before_cur);
+ d->im_state_.surrounding_text_ =
+ d->im_state_.text_before_ + d->im_state_.text_after_;
+ } else {
+ d->im_state_.text_before_.clear();
+ d->im_state_.text_after_ = partext;
+ d->im_state_.surrounding_text_ = partext;
+ }
LYXERR(Debug::DEBUG, "surrounding text before cursor = " <<
d->im_state_.text_before_);
--
lyx-cvs mailing list
[email protected]
https://lists.lyx.org/mailman/listinfo/lyx-cvs