summaryrefslogtreecommitdiff
path: root/basic
diff options
context:
space:
mode:
authorAugust Sodora <augsod@gmail.com>2012-01-16 20:42:36 -0500
committerAugust Sodora <augsod@gmail.com>2012-01-16 20:47:40 -0500
commitcd10d4e8a612f72bf2fa421bc1360d5230da505d (patch)
treee87e384a49e051355f6ed7c899d106cf28fe2c0a /basic
parent3c1ddd4de187363cf1c3f14c43b4a2c66b1de6d6 (diff)
Remove SbErrorStack[Entry]
Diffstat (limited to 'basic')
-rw-r--r--basic/source/classes/sbintern.cxx4
-rw-r--r--basic/source/classes/sbxmod.cxx5
-rw-r--r--basic/source/inc/sbintern.hxx65
-rw-r--r--basic/source/runtime/runtime.cxx14
-rw-r--r--basic/source/runtime/step1.cxx5
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)