summaryrefslogtreecommitdiff
path: root/formula
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2013-08-16 17:51:55 +0200
committerEike Rathke <erack@redhat.com>2013-08-16 17:54:30 +0200
commitb24e3a6042ccfeee650664cc6fb244dfeea497cb (patch)
tree05f7cb11d6c02f1fffd6b0098e736a54ca94f5ef /formula
parent78c995a184115ef4ec1c348bd9b910a3791de550 (diff)
differentiated warning for symbol/AddIn pair insertion, fdo#59727
Change-Id: I371bca810c40d4cfab0b9fcd47a070b4e68ee768
Diffstat (limited to 'formula')
-rw-r--r--formula/source/core/api/FormulaCompiler.cxx11
1 files changed, 10 insertions, 1 deletions
diff --git a/formula/source/core/api/FormulaCompiler.cxx b/formula/source/core/api/FormulaCompiler.cxx
index 6556257c1e78..4cb1164b72d4 100644
--- a/formula/source/core/api/FormulaCompiler.cxx
+++ b/formula/source/core/api/FormulaCompiler.cxx
@@ -253,10 +253,19 @@ const sal_Unicode* lcl_UnicodeStrChr( const sal_Unicode* pStr,sal_Unicode c )
void FormulaCompiler::OpCodeMap::putExternal( const String & rSymbol, const String & rAddIn )
{
+ // Different symbols may map to the same AddIn, but the same AddIn may not
+ // map to different symbols, the first pair wins. Same symbol of course may
+ // not map to different AddIns, again the first pair wins and also the
+ // AddIn->symbol mapping is not inserted in other cases.
bool bOk = mpExternalHashMap->insert( ExternalHashMap::value_type( rSymbol, rAddIn)).second;
+ SAL_WARN_IF( !bOk, "formula.core", "OpCodeMap::putExternal: symbol not inserted, " << rSymbol << " -> " << rAddIn);
if (bOk)
+ {
bOk = mpReverseExternalHashMap->insert( ExternalHashMap::value_type( rAddIn, rSymbol)).second;
- DBG_ASSERT( bOk, "OpCodeMap::putExternal: symbol not inserted");
+ // Failed insertion of the AddIn is ok for different symbols mapping to
+ // the same AddIn. Make this INFO only.
+ SAL_INFO_IF( !bOk, "formula.core", "OpCodeMap::putExternal: AddIn not inserted, " << rAddIn << " -> " << rSymbol);
+ }
}
void FormulaCompiler::OpCodeMap::putExternalSoftly( const String & rSymbol, const String & rAddIn )