commit dc38ae873a8bbfb1bece55e9bd8b20c7ef999f0e
Author: Georg Baum <[email protected]>
Date: Sun Apr 24 20:12:43 2016 +0200
Fix bug 10074 (regression)
This was a regression of 8aa37c43. I did not take into account that end_pos
could be -1, so the code that checked whether a pair of braces needs to be
inserted between two hyphens did not work for that case. Now we check for
the length of text_, which should be done anyway, and only take end_pos into
account when it is not -1.
diff --git a/src/Paragraph.cpp b/src/Paragraph.cpp
index 9fe4de8..a405b6a 100644
--- a/src/Paragraph.cpp
+++ b/src/Paragraph.cpp
@@ -1192,7 +1192,9 @@ void Paragraph::Private::latexSpecialChar(otexstream & os,
break;
case '-':
os << '-';
- if (i + 1 < end_pos && text_[i+1] == '-') {
+ if (i + 1 < static_cast<pos_type>(text_.size()) &&
+ (end_pos == -1 || i + 1 < end_pos) &&
+ text_[i+1] == '-') {
// Prevent "--" becoming an endash and "---" becoming
// an emdash.
// Within \ttfamily, "--" is merged to "-" (no endash)