[Libreoffice-commits] .: sc/source

Kohei Yoshida kohei at kemper.freedesktop.org
Mon Jun 13 07:51:50 PDT 2011


 sc/source/filter/excel/xeview.cxx |    4 ++--
 sc/source/filter/excel/xiview.cxx |    7 ++++---
 sc/source/filter/inc/xlview.hxx   |    2 +-
 3 files changed, 7 insertions(+), 6 deletions(-)

New commits:
commit 5b9d71d25f7314664d050b2288cdf174d51c9882
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Mon Jun 13 13:53:02 2011 +0200

    fdo#38154: convert split win Y coord to 16bit int before xls export
    
    Excel then won't complain about invalid xls file
    (this is some fallout from increasing Calc row limit above 65k lines)

diff --git a/sc/source/filter/excel/xeview.cxx b/sc/source/filter/excel/xeview.cxx
index 8d54c15..9b21c2b 100644
--- a/sc/source/filter/excel/xeview.cxx
+++ b/sc/source/filter/excel/xeview.cxx
@@ -207,7 +207,7 @@ void XclExpPane::SaveXml( XclExpXmlStream& rStrm )
 void XclExpPane::WriteBody( XclExpStream& rStrm )
 {
     rStrm   << mnSplitX
-            << mnSplitY
+            << static_cast<sal_uInt16>( mnSplitY )
             << maSecondXclPos
             << mnActivePane;
     if( rStrm.GetRoot().GetBiff() >= EXC_BIFF5 )
@@ -369,7 +369,7 @@ XclExpTabViewSettings::XclExpTabViewSettings( const XclExpRoot& rRoot, SCTAB nSc
         {
             // split window: position is in twips
             maData.mnSplitX = ulimit_cast< sal_uInt16 >( rTabSett.maSplitPos.X() );
-            maData.mnSplitY = ulimit_cast< sal_uInt16 >( rTabSett.maSplitPos.Y() );
+            maData.mnSplitY = ulimit_cast< sal_uInt32 >( rTabSett.maSplitPos.Y() );
         }
 
         // selection
diff --git a/sc/source/filter/excel/xiview.cxx b/sc/source/filter/excel/xiview.cxx
index 48b72b5..bd849fc 100644
--- a/sc/source/filter/excel/xiview.cxx
+++ b/sc/source/filter/excel/xiview.cxx
@@ -198,9 +198,10 @@ void XclImpTabViewSettings::ReadScl( XclImpStream& rStrm )
 
 void XclImpTabViewSettings::ReadPane( XclImpStream& rStrm )
 {
-    rStrm   >> maData.mnSplitX
-            >> maData.mnSplitY
-            >> maData.maSecondXclPos
+    rStrm   >> maData.mnSplitX;
+    maData.mnSplitY = rStrm.ReaduInt16();
+
+    rStrm   >> maData.maSecondXclPos
             >> maData.mnActivePane;
 }
 
diff --git a/sc/source/filter/inc/xlview.hxx b/sc/source/filter/inc/xlview.hxx
index ff524b8..b3dff0a 100644
--- a/sc/source/filter/inc/xlview.hxx
+++ b/sc/source/filter/inc/xlview.hxx
@@ -137,7 +137,7 @@ struct XclTabViewData
     XclAddress          maFirstXclPos;      /// First visible cell.
     XclAddress          maSecondXclPos;     /// First visible cell in additional panes.
     sal_uInt16          mnSplitX;           /// Split X position, or number of frozen columns.
-    sal_uInt16          mnSplitY;           /// Split Y position, or number of frozen rows.
+    sal_uInt32          mnSplitY;           /// Split Y position, or number of frozen rows.
     sal_uInt16          mnNormalZoom;       /// Zoom factor for normal view.
     sal_uInt16          mnPageZoom;         /// Zoom factor for pagebreak preview.
     sal_uInt16          mnCurrentZoom;      /// Zoom factor for current view.


More information about the Libreoffice-commits mailing list