As to the proposed patch, I'd like to hear the opinion of math users.
After some further investigation I found out that the bug was introduced
in changeset 10553: "Output \\ at the end of the last line if it is
empty (fixes bug 2067)". This is wrong, because outputting an extra "\\"
would mean that you really add an extra row. In the example of bug 2969,
this is visible because this extra line gets a number. In the first part
of the patch I reverted this change. I have no clue where bug 2067 is
about. Juergen, you can probably help me out here (it's your bug). At
least I can't seem to reproduce.

No idea. This is 4 years back, and I'm actually surprised I've ever reported a mathed bug (I guess I was just recording a user report from the list).

However, your explanations strike me sensible. Just check the reported undo bug doesn't come back.

Hmm, that's the problem, the action that would lead to this bug is not possible anymore.
No idea either. Does it make a difference wrt the indendation of subsequent paragraphs?

Maybe Andre knows:
http://www.lyx.org/trac/changeset/5532

Anyway, the following patch looks valid to me:

        // append newline only if line wasn't completely empty
        // and this was not the last line in the grid
-        if (!emptyline && row + 1 < end_row)
+        if (!(emptyline && eol.empty()))
            os << "\n";

Now, we make sure we do not output an newline character after a line which is empty by itself and which has an empty end-of-line string. In all other cases we do.
Jürgen
Vincent

Reply via email to