ooo-build r15163 - in trunk: . patches/dev300
- From: kyoshida svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r15163 - in trunk: . patches/dev300
- Date: Tue, 27 Jan 2009 06:32:02 +0000 (UTC)
Author: kyoshida
Date: Tue Jan 27 06:32:01 2009
New Revision: 15163
URL: http://svn.gnome.org/viewvc/ooo-build?rev=15163&view=rev
Log:
2009-01-27 Kohei Yoshida <kyoshida novell com>
* patches/dev300/sc-string-arg-m38.diff:
* patches/dev300/sc-string-arg.diff:
* patches/dev300/apply: adjusted for dev300-m39.
Added:
trunk/patches/dev300/sc-string-arg-m38.diff
- copied unchanged from r15157, /trunk/patches/dev300/sc-string-arg.diff
Modified:
trunk/ChangeLog
trunk/patches/dev300/apply
trunk/patches/dev300/sc-string-arg.diff
Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply (original)
+++ trunk/patches/dev300/apply Tue Jan 27 06:32:01 2009
@@ -779,9 +779,15 @@
sc-dp-gridlayout.diff, i#68544 n#190970, jody
+[ CalcFixes <= dev300-m38 ]
+# Excel compatibility for handling of "string numbers".
+sc-string-arg-m38.diff, i#5658, kohei
+
+[ CalcFixes > dev300-m38 ]
# Excel compatibility for handling of "string numbers".
sc-string-arg.diff, i#5658, kohei
+[ CalcFixes ]
# Fix for the above string number patch, for cases where a formula cell is
# being referenced by the origin cell.
sc-string-arg-ref-formula-cell.diff, n#391330, kohei
Modified: trunk/patches/dev300/sc-string-arg.diff
==============================================================================
--- trunk/patches/dev300/sc-string-arg.diff (original)
+++ trunk/patches/dev300/sc-string-arg.diff Tue Jan 27 06:32:01 2009
@@ -1,8 +1,8 @@
diff --git sc/source/core/inc/interpre.hxx sc/source/core/inc/interpre.hxx
-index 474d2aa..2dc537f 100644
+index b9b91a8..681766d 100644
--- sc/source/core/inc/interpre.hxx
+++ sc/source/core/inc/interpre.hxx
-@@ -174,8 +174,18 @@ void ReplaceCell( ScAddress& ); // for TableOp
+@@ -178,8 +178,18 @@ void ReplaceCell( ScAddress& ); // for TableOp
void ReplaceCell( SCCOL& rCol, SCROW& rRow, SCTAB& rTab ); // for TableOp
BOOL IsTableOpInRange( const ScRange& );
ULONG GetCellNumberFormat( const ScAddress&, const ScBaseCell* );
@@ -23,7 +23,7 @@
double GetValueCellValue( const ScAddress&, const ScValueCell* );
ScBaseCell* GetCell( const ScAddress& rPos )
{ return pDok->GetCell( rPos ); }
-@@ -314,7 +324,7 @@ StackVar GetStackType( BYTE nParam );
+@@ -318,7 +328,7 @@ formula::StackVar GetStackType( BYTE nParam );
BYTE GetByte() { return cPar; }
// generiert aus DoubleRef positionsabhaengige SingleRef
BOOL DoubleRefToPosSingleRef( const ScRange& rRange, ScAddress& rAdr );
@@ -33,10 +33,10 @@
BOOL IsMissing();
BOOL GetBool() { return GetDouble() != 0.0; }
diff --git sc/source/core/tool/interpr1.cxx sc/source/core/tool/interpr1.cxx
-index 722ca4b..a91fc44 100644
+index 5a6eb67..7e5a478 100644
--- sc/source/core/tool/interpr1.cxx
+++ sc/source/core/tool/interpr1.cxx
-@@ -3064,12 +3064,13 @@ double ScInterpreter::IterateParameters( ScIterFunc eFunc, BOOL bTextAsZero )
+@@ -3189,12 +3189,13 @@ double ScInterpreter::IterateParameters( ScIterFunc eFunc, BOOL bTextAsZero )
nGlobalError = 0;
while (nParamCount-- > 0)
{
@@ -53,7 +53,7 @@
{
String aStr( PopString() );
sal_uInt32 nFIndex = 0; // damit default Land/Spr.
-@@ -3078,42 +3079,23 @@ double ScInterpreter::IterateParameters( ScIterFunc eFunc, BOOL bTextAsZero )
+@@ -3203,42 +3204,23 @@ double ScInterpreter::IterateParameters( ScIterFunc eFunc, BOOL bTextAsZero )
}
else
{
@@ -109,7 +109,7 @@
if ( bNull && fVal != 0.0 )
{
bNull = FALSE;
-@@ -3122,12 +3104,15 @@ double ScInterpreter::IterateParameters( ScIterFunc eFunc, BOOL bTextAsZero )
+@@ -3247,12 +3229,15 @@ double ScInterpreter::IterateParameters( ScIterFunc eFunc, BOOL bTextAsZero )
else
fRes += fVal;
break;
@@ -130,10 +130,10 @@
{
PopSingleRef( aAdr );
diff --git sc/source/core/tool/interpr4.cxx sc/source/core/tool/interpr4.cxx
-index fdd78da..e997cc3 100644
+index cd2fccc..ef0d533 100644
--- sc/source/core/tool/interpr4.cxx
+++ sc/source/core/tool/interpr4.cxx
-@@ -199,18 +199,26 @@ double ScInterpreter::GetValueCellValue( const ScAddress& rPos, const ScValueCel
+@@ -207,19 +207,27 @@ double ScInterpreter::GetValueCellValue( const ScAddress& rPos, const ScValueCel
}
@@ -141,6 +141,7 @@
+double ScInterpreter::GetCellValue( const ScAddress& rPos, const ScBaseCell* pCell,
+ bool bNoValueAsError, bool bBlankAsZero )
{
+ RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "sc", "Eike Rathke sun com", "ScInterpreter::GetCellValue" );
USHORT nErr = nGlobalError;
nGlobalError = 0;
- double nVal = GetCellValueOrZero( rPos, pCell );
@@ -162,9 +163,9 @@
-double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCell* pCell )
+double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCell* pCell, bool bBlankAsZero )
{
+ RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "sc", "Eike Rathke sun com", "ScInterpreter::GetCellValueOrZero" );
double fValue;
- if (pCell)
-@@ -254,7 +262,7 @@ double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCel
+@@ -264,7 +272,7 @@ double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCel
break;
case CELLTYPE_STRING:
case CELLTYPE_EDIT:
@@ -173,7 +174,7 @@
// Xcl does it, but SUM(A1:A2) differs from A1+A2. No good.
{
String aStr;
-@@ -265,14 +273,15 @@ double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCel
+@@ -275,14 +283,15 @@ double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCel
sal_uInt32 nFIndex = 0; // damit default Land/Spr.
if ( !pFormatter->IsNumberFormat( aStr, nFIndex, fValue ) )
{
@@ -191,16 +192,16 @@
fValue = 0.0;
}
}
-@@ -1561,7 +1570,7 @@ BOOL ScInterpreter::DoubleRefToPosSingleRef( const ScRange& rRange, ScAddress& r
+@@ -1621,7 +1630,7 @@ BOOL ScInterpreter::DoubleRefToPosSingleRef( const ScRange& rRange, ScAddress& r
}
-double ScInterpreter::GetDouble()
+double ScInterpreter::GetDouble( bool bNoValueAsError, bool bBlankAsZero )
{
+ RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "sc", "Eike Rathke sun com", "ScInterpreter::GetDouble" );
double nVal;
- switch( GetRawStackType() )
-@@ -1585,7 +1594,7 @@ double ScInterpreter::GetDouble()
+@@ -1646,7 +1655,7 @@ double ScInterpreter::GetDouble()
ScAddress aAdr;
PopSingleRef( aAdr );
ScBaseCell* pCell = GetCell( aAdr );
@@ -210,10 +211,10 @@
break;
case svDoubleRef:
diff --git sc/source/core/tool/interpr5.cxx sc/source/core/tool/interpr5.cxx
-index 8b4eeac..bc91cca 100644
+index 5b05f0c..c5b4770 100644
--- sc/source/core/tool/interpr5.cxx
+++ sc/source/core/tool/interpr5.cxx
-@@ -1297,7 +1297,12 @@ void ScInterpreter::ScAdd()
+@@ -1184,7 +1184,12 @@ void ScInterpreter::CalculateAddSub(BOOL _bSub)
pMat2 = GetMatrix();
else
{
@@ -227,7 +228,7 @@
switch ( nCurFmtType )
{
case NUMBERFORMAT_DATE :
-@@ -1318,7 +1323,12 @@ void ScInterpreter::ScAdd()
+@@ -1205,7 +1210,12 @@ void ScInterpreter::CalculateAddSub(BOOL _bSub)
pMat1 = GetMatrix();
else
{
@@ -241,35 +242,7 @@
switch ( nCurFmtType )
{
case NUMBERFORMAT_DATE :
-@@ -1492,7 +1502,12 @@ void ScInterpreter::ScSub()
- pMat2 = GetMatrix();
- else
- {
-- fVal2 = GetDouble();
-+ fVal2 = GetDouble(true, true);
-+ if (nGlobalError)
-+ {
-+ PushError(nGlobalError);
-+ return;
-+ }
- switch ( nCurFmtType )
- {
- case NUMBERFORMAT_DATE :
-@@ -1513,7 +1528,12 @@ void ScInterpreter::ScSub()
- pMat1 = GetMatrix();
- else
- {
-- fVal1 = GetDouble();
-+ fVal1 = GetDouble(true, true);
-+ if (nGlobalError)
-+ {
-+ PushError(nGlobalError);
-+ return;
-+ }
- switch ( nCurFmtType )
- {
- case NUMBERFORMAT_DATE :
-@@ -1607,7 +1627,12 @@ void ScInterpreter::ScMul()
+@@ -1414,7 +1424,12 @@ void ScInterpreter::ScMul()
pMat2 = GetMatrix();
else
{
@@ -283,7 +256,7 @@
switch ( nCurFmtType )
{
case NUMBERFORMAT_CURRENCY :
-@@ -1620,7 +1645,12 @@ void ScInterpreter::ScMul()
+@@ -1427,7 +1442,12 @@ void ScInterpreter::ScMul()
pMat1 = GetMatrix();
else
{
@@ -297,7 +270,7 @@
switch ( nCurFmtType )
{
case NUMBERFORMAT_CURRENCY :
-@@ -1685,7 +1715,12 @@ void ScInterpreter::ScDiv()
+@@ -1494,7 +1514,12 @@ void ScInterpreter::ScDiv()
pMat2 = GetMatrix();
else
{
@@ -311,7 +284,7 @@
// hier kein Currency uebernehmen, 123kg/456DM sind nicht DM
nFmtCurrencyType2 = nCurFmtType;
}
-@@ -1693,7 +1728,12 @@ void ScInterpreter::ScDiv()
+@@ -1502,7 +1527,12 @@ void ScInterpreter::ScDiv()
pMat1 = GetMatrix();
else
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]