diff options
author | Zolnai Tamás <zolnaitamas2000@gmail.com> | 2015-01-07 02:14:33 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-01-07 10:06:20 +0000 |
commit | 32dce67106c9f6ddbb91daf4dd84308974ebe309 (patch) | |
tree | 8eda9634ec43719c3f7f6380903e96c4203e7e83 | |
parent | 0d63a64ecaeb4517c710876b1170e28ae71a44a2 (diff) |
fdo#83354: Chart is truncated - moved down outside the margins of the object
Handle the case when the content height is unitialized (0).
When content height is 0 it means there is no content (so
we don't need to calculate adjustment) or the content height is
uninitialized which leads to wrong calculated value.
Regression from:
cb19042f4395c97d123a27c6960d5e30d666c010
(cherry picked from commit 89a81a6610cf316666291750e7300bcd1a97d062)
Change-Id: I45570a71f0597847820ce77e8dcec4a5b0c6785d
Reviewed-on: https://gerrit.libreoffice.org/13783
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r-- | sw/source/core/layout/fly.cxx | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sw/source/core/layout/fly.cxx b/sw/source/core/layout/fly.cxx index 6c541c747f7c..2a119b56a0a9 100644 --- a/sw/source/core/layout/fly.cxx +++ b/sw/source/core/layout/fly.cxx @@ -1705,7 +1705,12 @@ void SwFlyFrm::MakeContentPos( const SwBorderAttrs &rAttrs ) const SdrTextVertAdjust nAdjust = GetFmt()->GetTextVertAdjust().GetValue(); if( nAdjust != SDRTEXTVERTADJUST_TOP ) { - SwTwips nDiff = (Prt().*fnRect->fnGetHeight)() - CalcContentHeight(&rAttrs, nMinHeight, nUL); + const SwTwips nContentHeight = CalcContentHeight(&rAttrs, nMinHeight, nUL); + SwTwips nDiff = 0; + + if( nContentHeight != 0) + nDiff = (Prt().*fnRect->fnGetHeight)() - nContentHeight; + if( nDiff > 0 ) { if( nAdjust == SDRTEXTVERTADJUST_CENTER ) |