From c0085882300a75f9124f1eef30a8456b5d901753 Mon Sep 17 00:00:00 2001 From: martin Date: Sat, 1 Aug 2009 18:01:17 +0000 Subject: [PATCH] SynEdit: fixed an issue with deleting if past-Eol, padding was sometimes omitted git-svn-id: trunk@21060 - --- components/synedit/syneditpointclasses.pas | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/components/synedit/syneditpointclasses.pas b/components/synedit/syneditpointclasses.pas index 5e3faccf9e..6d9c60e52f 100644 --- a/components/synedit/syneditpointclasses.pas +++ b/components/synedit/syneditpointclasses.pas @@ -848,12 +848,12 @@ var end; if BE.Y > BB.Y then begin l := length(FLines[BB.Y - 1]); - if BB.X > l + 1 then BB.X := l + 1; - BE.X := BE.X + l; - FLines.EditLineJoin(BB.Y); + BE.X := BE.X + BB.X - 1; + FLines.EditLineJoin(BB.Y, StringOfChar(' ', Max(0, BB.X - (l+1)))); BE.Y := BB.Y; end; - FLines.EditDelete(BB.X, BB.Y, BE.X - BB.X); + if BE.X <> BB.X then + FLines.EditDelete(BB.X, BB.Y, BE.X - BB.X); end; FInternalCaret.LineBytePos := BB; end;