[Libreoffice-commits] core.git: sfx2/source

Markus Mohrhard markus.mohrhard at googlemail.com
Sat Nov 2 23:01:43 CET 2013


 sfx2/source/doc/docmacromode.cxx |   29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)

New commits:
commit 2e803712c4c2b844dab1fefdfbda12058a5f1ab7
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sat Nov 2 23:29:27 2013 +0100

    don't warn for empty VBA structure, fdo#61059
    
    Change-Id: I0d0f7fa216fcea7ca893120ad183dc3758ca51d4

diff --git a/sfx2/source/doc/docmacromode.cxx b/sfx2/source/doc/docmacromode.cxx
index 3969b1c..fac3a7b 100644
--- a/sfx2/source/doc/docmacromode.cxx
+++ b/sfx2/source/doc/docmacromode.cxx
@@ -331,25 +331,24 @@ namespace sfx2
                 else
                 {
                     OUString aStdLibName( "Standard" );
+                    OUString aVBAProject( "VBAProject" );
                     Sequence< OUString > aElements = xContainer->getElementNames();
                     if ( aElements.getLength() )
                     {
-                        if ( aElements.getLength() > 1 || !aElements[0].equals( aStdLibName ) )
-                            bHasMacroLib = sal_True;
-                        else
+                        sal_Int32 nElements = aElements.getLength();
+                        for( sal_Int32 i = 0; i < nElements; ++i )
                         {
-                            // usually a "Standard" library is always present (design)
-                            // for this reason we must check if it's empty
-                            //
-                            // Note: Since #i73229#, this is not true anymore. There's no default
-                            // "Standard" lib anymore. Wouldn't it be time to get completely
-                            // rid of the "Standard" thingie - this shouldn't be necessary
-                            // anymore, should it?
-                            Reference < XNameAccess > xLib;
-                            Any aAny = xContainer->getByName( aStdLibName );
-                            aAny >>= xLib;
-                            if ( xLib.is() )
-                                bHasMacroLib = xLib->hasElements();
+                            OUString aElement = aElements[i];
+                            if( aElement == aStdLibName || aElement == aVBAProject )
+                            {
+                                Reference < XNameAccess > xLib;
+                                Any aAny = xContainer->getByName( aStdLibName );
+                                aAny >>= xLib;
+                                if ( xLib.is() && xLib->hasElements() )
+                                    return sal_True;
+                            }
+                            else
+                                return sal_True;
                         }
                     }
                 }


More information about the Libreoffice-commits mailing list