[Libreoffice-commits] .: basic/source

August Sodora augsod at kemper.freedesktop.org
Mon Jan 16 17:47:47 PST 2012


 basic/source/classes/sbintern.cxx |    4 --
 basic/source/classes/sbxmod.cxx   |    5 --
 basic/source/inc/sbintern.hxx     |   65 --------------------------------------
 basic/source/runtime/runtime.cxx  |   14 +-------
 basic/source/runtime/step1.cxx    |    5 --
 5 files changed, 2 insertions(+), 91 deletions(-)

New commits:
commit cd10d4e8a612f72bf2fa421bc1360d5230da505d
Author: August Sodora <augsod at gmail.com>
Date:   Mon Jan 16 20:42:36 2012 -0500

    Remove SbErrorStack[Entry]

diff --git a/basic/source/classes/sbintern.cxx b/basic/source/classes/sbintern.cxx
index 1993aa6..1f3a40f 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 b492fee..d61b63c 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 ac6b883..bc35651 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 c76776e..39c48c3 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 b007c89..d90d8aa 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)


More information about the Libreoffice-commits mailing list