-static bool allNonLowercase(DocIterator const & cur, int len) {
- pos_type end_pos = cur.pos() + len;
- for (pos_type pos = cur.pos(); pos != end_pos; ++pos)
+static bool allNonLowercase(Cursor const & cur, int len)
+{
+ pos_type beg_pos = cur.selectionBegin().pos();
+ pos_type end_pos = cur.selectionBegin().pos() + len;
+ if (len > cur.lastpos() + 1 - beg_pos) {
+ LYXERR(Debug::FIND, "This should not happen, more debug needed");
+ len = cur.lastpos() + 1 - beg_pos;
+ }
+ for (pos_type pos = beg_pos; pos != end_pos; ++pos)