Files
libreoffice/sc/source/core/tool/subtotal.cxx
Vladimir Glazounov 546fcd1cb9 CWS-TOOLING: integrate CWS koheicoderemoval02
2009-07-24 Kohei Yoshida Resurrected one method that was now used after the rebase.  Now the entire sc module
builds.
2009-07-24 Kohei Yoshida Rebased to DEV300_m53.
2009-07-23 Kohei Yoshida resolved conflict during merge to DEV300_m52.
2009-05-09 Kohei Yoshida #i95953# partially applied Caolan's patch.
2009-05-09 Kohei Yoshida #i101326# Removed old pivot implementation code that was already disabled.
2009-05-09 Kohei Yoshida More unused methods commented out.
2009-05-09 Kohei Yoshida More unused methods commented out.
2009-05-08 Kohei Yoshida Removed more unused methods, mostly related to binfilter methods.
2009-05-08 Kohei Yoshida #i95953# the first round of unused method removal, based solely on Caolan's
list.  All removed methods were double-checked manually to make sure they are
really unused, followed by a build test with debug on.
2009-08-25 13:53:16 +00:00

85 lines
2.3 KiB
C++

/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2008 by Sun Microsystems, Inc.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: subtotal.cxx,v $
* $Revision: 1.7.32.1 $
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sc.hxx"
// INCLUDE ---------------------------------------------------------------
#include "subtotal.hxx"
#include "interpre.hxx"
// -----------------------------------------------------------------------
BOOL SubTotal::SafePlus(double& fVal1, double fVal2)
{
BOOL bOk = TRUE;
SAL_MATH_FPEXCEPTIONS_OFF();
fVal1 += fVal2;
if (!::rtl::math::isFinite(fVal1))
{
bOk = FALSE;
if (fVal2 > 0.0)
fVal1 = DBL_MAX;
else
fVal1 = -DBL_MAX;
}
return bOk;
}
BOOL SubTotal::SafeMult(double& fVal1, double fVal2)
{
BOOL bOk = TRUE;
SAL_MATH_FPEXCEPTIONS_OFF();
fVal1 *= fVal2;
if (!::rtl::math::isFinite(fVal1))
{
bOk = FALSE;
fVal1 = DBL_MAX;
}
return bOk;
}
BOOL SubTotal::SafeDiv(double& fVal1, double fVal2)
{
BOOL bOk = TRUE;
SAL_MATH_FPEXCEPTIONS_OFF();
fVal1 /= fVal2;
if (!::rtl::math::isFinite(fVal1))
{
bOk = FALSE;
fVal1 = DBL_MAX;
}
return bOk;
}