summaryrefslogtreecommitdiff
path: root/sw/source/core/txtnode/swfont.cxx
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-01-21 11:16:20 +0100
committerCaolán McNamara <caolanm@redhat.com>2014-01-21 15:53:43 +0000
commit98176bc2078d4ce18d4eb41b54b4ad1c72a2774d (patch)
tree955fca7dda6ba916a3569b5e71b8cbd59e951b41 /sw/source/core/txtnode/swfont.cxx
parenteed45184ff542a713d28928b50c5a8ce8efd3a92 (diff)
fdo#68959: sw: fix painting of tab fill characters in small caps text
The member SwDrawTextInfo::pPos was changed from a pointer to some externally provided Point to a real object; unfortunately there were some functions which hold backups of the current pPos as a reference/pointer and then restore it, and the restore is a no-op now. So use real Points as backups. (regression from f22006dc6ac34a35a060e15466cf6b2d2058617d) Change-Id: I8470143ec494cb194a88ddcbd12d96867974278f (cherry picked from commit c445d40da8daa2f6ec0ae9930a06f50ab80cc85d) Reviewed-on: https://gerrit.libreoffice.org/7567 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'sw/source/core/txtnode/swfont.cxx')
-rw-r--r--sw/source/core/txtnode/swfont.cxx8
1 files changed, 4 insertions, 4 deletions
diff --git a/sw/source/core/txtnode/swfont.cxx b/sw/source/core/txtnode/swfont.cxx
index 2269f248e48e..21c6601e3601 100644
--- a/sw/source/core/txtnode/swfont.cxx
+++ b/sw/source/core/txtnode/swfont.cxx
@@ -1195,12 +1195,12 @@ void SwSubFont::_DrawText( SwDrawTextInfo &rInf, const sal_Bool bGrey )
SwDigitModeModifier aDigitModeModifier( rInf.GetOut(), rInf.GetFont()->GetLanguage() );
+ const Point aOldPos(rInf.GetPos());
Point aPos( rInf.GetPos() );
if( GetEscapement() )
CalcEsc( rInf, aPos );
- const Point &rOld = rInf.GetPos();
rInf.SetPos( aPos );
rInf.SetKern( CheckKerning() + rInf.GetSperren() / SPACING_PRECISION_FACTOR );
@@ -1300,7 +1300,7 @@ void SwSubFont::_DrawText( SwDrawTextInfo &rInf, const sal_Bool bGrey )
rInf.SetLen( nOldLen );
}
- rInf.SetPos( rOld );
+ rInf.SetPos(aOldPos);
}
void SwSubFont::_DrawStretchText( SwDrawTextInfo &rInf )
@@ -1325,13 +1325,13 @@ void SwSubFont::_DrawStretchText( SwDrawTextInfo &rInf )
rInf.ApplyAutoColor();
+ const Point aOldPos(rInf.GetPos());
Point aPos( rInf.GetPos() );
if( GetEscapement() )
CalcEsc( rInf, aPos );
rInf.SetKern( CheckKerning() + rInf.GetSperren() / SPACING_PRECISION_FACTOR );
- const Point &rOld = rInf.GetPos();
rInf.SetPos( aPos );
if( IsCapital() )
@@ -1382,7 +1382,7 @@ void SwSubFont::_DrawStretchText( SwDrawTextInfo &rInf )
rInf.SetLen( nOldLen );
}
- rInf.SetPos( rOld );
+ rInf.SetPos(aOldPos);
}
xub_StrLen SwSubFont::_GetCrsrOfst( SwDrawTextInfo& rInf )