commit 976e0b79933e162070ef3d2973fb0c899f8bdf54
Author: Enrico Forestieri <[email protected]>
Date: Thu Dec 6 10:30:58 2018 +0100
Amend bd21aa9
Check whether a line is actually blank rather than whether
we are at the beginning of a line.
---
src/Changes.cpp | 2 +-
src/texstream.h | 7 ++++++-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/Changes.cpp b/src/Changes.cpp
index 5f8e3b2..6e3bf0f 100644
--- a/src/Changes.cpp
+++ b/src/Changes.cpp
@@ -428,7 +428,7 @@ int Changes::latexMarkChange(otexstream & os, BufferParams
const & bparams,
// signature needed by \lyxsout to correctly strike out display math
if (change.type == Change::DELETED && runparams.inDisplayMath
&& !dvipost) {
- if (os.lastChar() == '\n')
+ if (os.blankLine())
str += from_ascii("\\\\\\noindent\n");
else
str += from_ascii("\\\\\\\\\n");
diff --git a/src/texstream.h b/src/texstream.h
index 2cfcd16..a14f84b 100644
--- a/src/texstream.h
+++ b/src/texstream.h
@@ -82,7 +82,7 @@ public:
explicit otexstream(odocstream & os)
: otexrowstream(os), canbreakline_(false),
protectspace_(false), terminate_command_(false),
- parbreak_(true), lastchar_(0) {}
+ parbreak_(true), blankline_(true), lastchar_(0) {}
///
void put(char_type const & c);
///
@@ -103,6 +103,7 @@ public:
void lastChar(char_type const & c)
{
parbreak_ = (!canbreakline_ && c == '\n');
+ blankline_ = ((!canbreakline_ && c == ' ') || c == '\n');
canbreakline_ = (c != '\n');
lastchar_ = c;
}
@@ -110,6 +111,8 @@ public:
char_type lastChar() const { return lastchar_; }
///
bool afterParbreak() const { return parbreak_; }
+ ///
+ bool blankLine() const { return blankline_; }
private:
///
bool canbreakline_;
@@ -120,6 +123,8 @@ private:
///
bool parbreak_;
///
+ bool blankline_;
+ ///
char_type lastchar_;
};