mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-03 06:13:01 +00:00
Fix bug #9112: There is a test here that seems intended to catch the
case where there are unbalanced braces, but it comes too late. In that
case, we try to check cmd[docstring::npos] and crash.
(cherry picked from commit 6b0a8fbc96
)
This commit is contained in:
parent
ede754039d
commit
b17802ba81
@ -537,8 +537,11 @@ docstring Encodings::fromLaTeXCommand(docstring const & cmd, int cmdtype,
|
||||
if (j + 1 < cmdend && cmd[j + 1] == '{') {
|
||||
size_t k = j + 1;
|
||||
int count = 1;
|
||||
while (k < cmdend && count && k != docstring::npos) {
|
||||
while (k < cmdend && count) {
|
||||
k = cmd.find_first_of(from_ascii("{}"), k + 1);
|
||||
// braces may not be balanced
|
||||
if (k == docstring::npos)
|
||||
break;
|
||||
if (cmd[k] == '{')
|
||||
++count;
|
||||
else
|
||||
@ -603,8 +606,11 @@ docstring Encodings::fromLaTeXCommand(docstring const & cmd, int cmdtype,
|
||||
k < cmdend && cmd[k] == '{') {
|
||||
size_t l = k;
|
||||
int count = 1;
|
||||
while (l < cmdend && count && l != docstring::npos) {
|
||||
while (l < cmdend && count) {
|
||||
l = cmd.find_first_of(from_ascii("{}"), l + 1);
|
||||
// braces may not be balanced
|
||||
if (l == docstring::npos)
|
||||
break;
|
||||
if (cmd[l] == '{')
|
||||
++count;
|
||||
else
|
||||
|
@ -91,6 +91,8 @@ What's new
|
||||
- Fix crash when performing "Change Case" operation on a selection with font
|
||||
changes (bug 7943).
|
||||
|
||||
- Fix crash involving certain sorts of BibTeX files (bug 9112).
|
||||
|
||||
- Fix assertion when entering a path into the import dialog (bug 7437).
|
||||
|
||||
- Fix assertion when doing advanced replace with table cells selected (bug
|
||||
|
Loading…
Reference in New Issue
Block a user