[Libreoffice-commits] core.git: Branch 'libreoffice-4-4-3' - toolkit/source

Caolán McNamara caolanm at redhat.com
Thu Apr 16 09:12:01 PDT 2015


 toolkit/source/awt/vclxwindow.cxx |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

New commits:
commit d5fdff3e8984c40435bc1093c8ca6820bd635f5a
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue Mar 31 13:36:37 2015 +0100

    Resolves: tdf#90228 1.06 turns into a monster
    
    (cherry picked from commit 2ec9d9dd81f3f4ee6785ba938f9a79395972b71e)
    
    Also happens to fix tdf#89987
    
    Change-Id: I8ebb57fe8b94da2569593ffa7cf374cae64a846a
    Signed-off-by: Michael Stahl <mstahl at redhat.com>
    (cherry picked from commit ba672e1351b7c170aa91dc0c99ecb80d00fcdb06)
    Reviewed-on: https://gerrit.libreoffice.org/15332
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    Reviewed-by: Adolfo Jayme Barrientos <fitojb at ubuntu.com>

diff --git a/toolkit/source/awt/vclxwindow.cxx b/toolkit/source/awt/vclxwindow.cxx
index 6940762..290555f 100644
--- a/toolkit/source/awt/vclxwindow.cxx
+++ b/toolkit/source/awt/vclxwindow.cxx
@@ -2331,8 +2331,9 @@ void VCLXWindow::setZoom( float fZoomX, float /*fZoomY*/ ) throw(::com::sun::sta
         // The implicit conversion from float to double can result in a precision loss, i.e. 1.2 is converted to
         // 1.200000000047something. To prevent this, we convert explicitly to double, and round it.
         double nZoom( fZoomX );
-        nZoom = ::rtl::math::round( nZoom, 4 );
-        GetWindow()->SetZoom( Fraction( nZoom ) );
+        Fraction aZoom(::rtl::math::round(nZoom, 4));
+        aZoom.ReduceInaccurate(10); // to avoid runovers and BigInt mapping
+        GetWindow()->SetZoom(aZoom);
     }
 }
 


More information about the Libreoffice-commits mailing list