From 270201ed67f6aec9a075f7dae65085ac64b5a36d Mon Sep 17 00:00:00 2001 From: Georg Baum Date: Sat, 22 Feb 2014 11:02:50 +0100 Subject: [PATCH] Fix bug #8891 (wrong depth of copied text) This was an obvious thinko: When pasting a paragraph list the depth of the pasted paragraphs need to be adjusted, so that no paragraph has a negative depth afterwards. However, the maximum allowed depth was only adjusted after the second and following pasted paragraphs. Since the computed value was only used for the subsequent paragrph this meant that the second paragraph did still use the same maximum allowed depth as the first one, which came from the paragraph the text as pasted into. This was wrong e.g. in case the outside paragraph was a standard paragraph (max_depth = 0), and the first pasted paragraph was an enumeration (max_depth = 1). Therefore, max_depth needs to be adjusted also after the first pasted paragaph. Since the adjustment is done aftre max_depth was used for the current paragraph the condition mentioned in the comment is still met. --- src/CutAndPaste.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/CutAndPaste.cpp b/src/CutAndPaste.cpp index 844a119ca2..9e7ddd31fe 100644 --- a/src/CutAndPaste.cpp +++ b/src/CutAndPaste.cpp @@ -209,10 +209,8 @@ pasteSelectionHelper(DocIterator const & cur, ParagraphList const & parlist, if (tmpbuf->params().depth() > max_depth) tmpbuf->params().depth(max_depth); - // Only set this from the 2nd on as the 2nd depends - // for maxDepth still on pit. - if (tmpbuf != insertion.begin()) - max_depth = tmpbuf->getMaxDepthAfter(); + // Set max_depth for the next paragraph + max_depth = tmpbuf->getMaxDepthAfter(); // Set the inset owner of this paragraph. tmpbuf->setInsetOwner(target_inset);