diff options
author | August Sodora <augsod@gmail.com> | 2012-01-16 20:42:36 -0500 |
---|---|---|
committer | August Sodora <augsod@gmail.com> | 2012-01-16 20:47:40 -0500 |
commit | cd10d4e8a612f72bf2fa421bc1360d5230da505d (patch) | |
tree | e87e384a49e051355f6ed7c899d106cf28fe2c0a /basic | |
parent | 3c1ddd4de187363cf1c3f14c43b4a2c66b1de6d6 (diff) |
Remove SbErrorStack[Entry]
Diffstat (limited to 'basic')
-rw-r--r-- | basic/source/classes/sbintern.cxx | 4 | ||||
-rw-r--r-- | basic/source/classes/sbxmod.cxx | 5 | ||||
-rw-r--r-- | basic/source/inc/sbintern.hxx | 65 | ||||
-rw-r--r-- | basic/source/runtime/runtime.cxx | 14 | ||||
-rw-r--r-- | basic/source/runtime/step1.cxx | 5 |
5 files changed, 2 insertions, 91 deletions
diff --git a/basic/source/classes/sbintern.cxx b/basic/source/classes/sbintern.cxx index 1993aa65f75b..1f3a40f5a366 100644 --- a/basic/source/classes/sbintern.cxx +++ b/basic/source/classes/sbintern.cxx @@ -36,8 +36,6 @@ #include "codegen.hxx" #include <basic/basmgr.hxx> -SV_IMPL_PTRARR(SbErrorStack, SbErrorStackEntry*) - SbiGlobals* GetSbData() { SbiGlobals** pp = (SbiGlobals**) ::GetAppData( SHL_SBC ); @@ -63,7 +61,6 @@ SbiGlobals::SbiGlobals() bCompiler = sal_False; bGlobalInitErr = sal_False; bRunInit = sal_False; - pErrStack = NULL; pTransliterationWrapper = NULL; bBlockCompilerError = sal_False; pAppBasMgr = NULL; @@ -72,7 +69,6 @@ SbiGlobals::SbiGlobals() SbiGlobals::~SbiGlobals() { - delete pErrStack; delete pSbFac; delete pUnoFac; delete pTransliterationWrapper; diff --git a/basic/source/classes/sbxmod.cxx b/basic/source/classes/sbxmod.cxx index b492fee4b276..d61b63cd0621 100644 --- a/basic/source/classes/sbxmod.cxx +++ b/basic/source/classes/sbxmod.cxx @@ -1155,11 +1155,6 @@ sal_uInt16 SbModule::Run( SbMethod* pMeth ) } } - // Delete the Error-Stack - SbErrorStack*& rErrStack = GetSbData()->pErrStack; - delete rErrStack; - rErrStack = NULL; - if( nMaxCallLevel == 0 ) { #ifdef UNX diff --git a/basic/source/inc/sbintern.hxx b/basic/source/inc/sbintern.hxx index ac6b883c17ee..bc3565196cc6 100644 --- a/basic/source/inc/sbintern.hxx +++ b/basic/source/inc/sbintern.hxx @@ -87,70 +87,6 @@ public: SbModule* FindClass( const String& rClassName ); }; -// stack for the SbiRuntime chain which is removed in the case of an error -class BASIC_DLLPUBLIC SbErrorStackEntry -{ -public: - SbErrorStackEntry(SbMethodRef aM, xub_StrLen nL, xub_StrLen nC1, xub_StrLen nC2) - : aMethod(aM), nLine(nL), nCol1(nC1), nCol2(nC2) {} - SbMethodRef aMethod; - xub_StrLen nLine; - xub_StrLen nCol1, nCol2; -}; - -typedef sal_Bool (*FnForEach_SbErrorStack)( const SbErrorStackEntry* &, void* ); -class BASIC_DLLPUBLIC SbErrorStack: public SvPtrarr -{ -public: - SbErrorStack( sal_uInt16 nIni=1, sal_uInt8 nG=1 ) - : SvPtrarr(nIni,nG) {} - ~SbErrorStack() { DeleteAndDestroy( 0, Count() ); } - void Insert( const SbErrorStack *pI, sal_uInt16 nP, - sal_uInt16 nS = 0, sal_uInt16 nE = USHRT_MAX ) { - SvPtrarr::Insert((const SvPtrarr*)pI, nP, nS, nE); - } - void Insert( const SbErrorStackEntry* & aE, sal_uInt16 nP ) { - SvPtrarr::Insert((const VoidPtr &)aE, nP ); - } - void Insert( const SbErrorStackEntry* *pE, sal_uInt16 nL, sal_uInt16 nP ) { - SvPtrarr::Insert( (const VoidPtr *)pE, nL, nP ); - } - void Replace( const SbErrorStackEntry* & aE, sal_uInt16 nP ) { - SvPtrarr::Replace( (const VoidPtr &)aE, nP ); - } - void Replace( const SbErrorStackEntry* *pE, sal_uInt16 nL, sal_uInt16 nP ) { - SvPtrarr::Replace( (const VoidPtr*)pE, nL, nP ); - } - void Remove( sal_uInt16 nP, sal_uInt16 nL = 1) { - SvPtrarr::Remove(nP,nL); - } - const SbErrorStackEntry** GetData() const { - return (const SbErrorStackEntry**)SvPtrarr::GetData(); - } - void ForEach( CONCAT( FnForEach_, SbErrorStack ) fnForEach, void* pArgs = 0 ) - { - _ForEach( 0, nA, (FnForEach_SvPtrarr)fnForEach, pArgs ); - } - void ForEach( sal_uInt16 nS, sal_uInt16 nE, - CONCAT( FnForEach_, SbErrorStack ) fnForEach, void* pArgs = 0 ) - { - _ForEach( nS, nE, (FnForEach_SvPtrarr)fnForEach, pArgs ); - } - SbErrorStackEntry* operator[]( sal_uInt16 nP )const { - return (SbErrorStackEntry*)SvPtrarr::operator[](nP); } - SbErrorStackEntry* GetObject( sal_uInt16 nP )const { - return (SbErrorStackEntry*)SvPtrarr::GetObject(nP); } - - sal_uInt16 GetPos( const SbErrorStackEntry* & aE ) const { - return SvPtrarr::GetPos((const VoidPtr &)aE); - } - void DeleteAndDestroy( sal_uInt16 nP, sal_uInt16 nL=1 ); -private: - BASIC_DLLPRIVATE SbErrorStack( const SbErrorStack& ); - BASIC_DLLPRIVATE SbErrorStack& operator=( const SbErrorStack& ); -}; - - struct SbiGlobals { SbiInstance* pInst; // all active runtime instances @@ -172,7 +108,6 @@ struct SbiGlobals sal_Bool bGlobalInitErr; sal_Bool bRunInit; // sal_True, if RunInit active from the Basic String aErrMsg; // buffer for GetErrorText() - SbErrorStack* pErrStack; // for the SbiRuntime chain ::utl::TransliterationWrapper* pTransliterationWrapper; // For StrComp sal_Bool bBlockCompilerError; BasicManager* pAppBasMgr; diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx index c76776eb8d68..39c48c35ebff 100644 --- a/basic/source/runtime/runtime.cxx +++ b/basic/source/runtime/runtime.cxx @@ -794,11 +794,6 @@ sal_Bool SbiRuntime::Step() if( pRtErrHdl ) { - SbErrorStack*& rErrStack = GetSbData()->pErrStack; - if( rErrStack ) - delete rErrStack; - rErrStack = new SbErrorStack(); - // manipulate all the RTs that are below in the call-stack pRt = this; do @@ -806,14 +801,9 @@ sal_Bool SbiRuntime::Step() pRt->nError = err; if( pRt != pRtErrHdl ) pRt->bRun = sal_False; - - SbErrorStackEntry *pEntry = new SbErrorStackEntry - ( pRt->pMeth, pRt->nLine, pRt->nCol1, pRt->nCol2 ); - rErrStack->C40_INSERT(SbErrorStackEntry, pEntry, rErrStack->Count() ); - - if( pRt == pRtErrHdl ) + else break; - pRt = pRt->pNext; + pRt = pRt->pNext; } while( pRt ); } diff --git a/basic/source/runtime/step1.cxx b/basic/source/runtime/step1.cxx index b007c897c86f..d90d8aa79379 100644 --- a/basic/source/runtime/step1.cxx +++ b/basic/source/runtime/step1.cxx @@ -397,11 +397,6 @@ void SbiRuntime::StepRESUME( sal_uInt32 nOp1 ) pInst->nErl = 0; nError = 0; bInError = sal_False; - - - SbErrorStack*& rErrStack = GetSbData()->pErrStack; - delete rErrStack; - rErrStack = NULL; } // close channel (+channel, 0=all) |