From ff3a6a514d4a95653d111610ea06954b8130a869 Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Thu, 26 Jan 2012 14:03:12 +0100 Subject: [PATCH 1/3] cast from BorderLine to BorderLine2 is not valid Don't access a css::table::BorderLine struct as if it was a css::table::BorderLine2 struct, which it isn't. A proper implementation would need to pass BorderLine2 structs around for which it would need a css::table::TableBorder2 struct that holds BorderLine2 instead of BorderLine, and adapt various places for API compatibility to support both. For now use the default table::BorderLineStyle::SOLID to set the line style at ::editeng::SvxBorderLine This also fixes fdo#39117. (cherry picked from commit 97c66b3b13528cc50f271217663718b3d6681bd9) Signed-off-by: Michael Stahl --- sc/source/ui/unoobj/cellsuno.cxx | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sc/source/ui/unoobj/cellsuno.cxx b/sc/source/ui/unoobj/cellsuno.cxx index 8e7475d..63ba3ef 100644 --- a/sc/source/ui/unoobj/cellsuno.cxx +++ b/sc/source/ui/unoobj/cellsuno.cxx @@ -61,6 +61,7 @@ #include #include #include +#include #include #include #include @@ -952,8 +953,7 @@ ScSubTotalFunc lcl_SummaryToSubTotal( sheet::GeneralFunction eSummary ) const ::editeng::SvxBorderLine* ScHelperFunctions::GetBorderLine( ::editeng::SvxBorderLine& rLine, const table::BorderLine& rStruct ) { // Calc needs Twips, and there are 1/100mm in the Uno structure - const table::BorderLine2& rBorder2 = static_cast< const table::BorderLine2& >( rStruct ); - rLine.SetStyle( ::editeng::SvxBorderStyle( rBorder2.LineStyle ) ); + rLine.SetStyle( ::editeng::SvxBorderStyle( table::BorderLineStyle::SOLID ) ); rLine.GuessLinesWidths( rLine.GetStyle(), (sal_uInt16)HMMToTwips( rStruct.OuterLineWidth ), (sal_uInt16)HMMToTwips( rStruct.InnerLineWidth ), -- 1.7.7.6