diff options
Diffstat (limited to 'editeng')
-rw-r--r-- | editeng/source/items/borderline.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/editeng/source/items/borderline.cxx b/editeng/source/items/borderline.cxx index 8d073c6da93b..b617ff43a4dc 100644 --- a/editeng/source/items/borderline.cxx +++ b/editeng/source/items/borderline.cxx @@ -298,6 +298,22 @@ void SvxBorderLine::GuessLinesWidths( SvxBorderStyle nStyle, sal_uInt16 nOut, sa else { SetStyle( nStyle ); + if (nOut == 0 && nIn > 0) + { + // If only inner width is given swap inner and outer widths for + // single line styles, otherwise GuessWidth() marks this as invalid + // and returns a 0 width. + switch (nStyle) + { + case SOLID: + case DOTTED: + case DASHED: + ::std::swap( nOut, nIn); + break; + default: + ; // nothing + } + } m_nWidth = m_aWidthImpl.GuessWidth( nOut, nIn, nDist ); } } |