[Libreoffice-commits] core.git: 2 commits - chart2/Module_chart2.mk desktop/source fpicker/source include/svl include/svtools sfx2/source svl/Library_svl.mk svl/source svtools/inc svtools/source

Stephan Bergmann sbergman at redhat.com
Tue May 14 10:15:02 PDT 2013


 chart2/Module_chart2.mk                      |    1 
 desktop/source/app/app.cxx                   |   13 -
 fpicker/source/office/iodlg.cxx              |   25 ---
 fpicker/source/office/iodlg.hxx              |   17 --
 fpicker/source/office/iodlgimp.cxx           |   32 +---
 include/svl/folderrestriction.hxx            |   47 ------
 include/svl/restrictedpaths.hxx              |   75 ---------
 include/svl/urlfilter.hxx                    |   12 -
 include/svtools/fileview.hxx                 |    3 
 include/svtools/inettbc.hxx                  |    2 
 sfx2/source/inet/inettbc.cxx                 |    1 
 svl/Library_svl.mk                           |    2 
 svl/source/misc/folderrestriction.cxx        |   98 ------------
 svl/source/misc/restrictedpaths.cxx          |  204 ---------------------------
 svtools/inc/pch/precompiled_svt.hxx          |    1 
 svtools/source/contnr/contentenumeration.cxx |   11 -
 svtools/source/contnr/contentenumeration.hxx |    4 
 svtools/source/contnr/fileview.cxx           |   12 -
 svtools/source/contnr/templwin.cxx           |   10 -
 svtools/source/contnr/templwin.hxx           |    3 
 svtools/source/control/inettbc.cxx           |   17 --
 21 files changed, 21 insertions(+), 569 deletions(-)

New commits:
commit f3515761c00c6e911e9d4f2b10e941481c7ac720
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue May 14 19:10:51 2013 +0200

    Assume CppunitTest_chart2_import got removed by accident
    
    ...by 14c2ab30201d97f733375b4e3e88e5919701be25 "add export test for charts."
    
    Change-Id: I5c77276a80e15fff8d4042c3bc52f3094227d647

diff --git a/chart2/Module_chart2.mk b/chart2/Module_chart2.mk
index 1cfe2ad..03c7cf3 100644
--- a/chart2/Module_chart2.mk
+++ b/chart2/Module_chart2.mk
@@ -18,6 +18,7 @@ $(eval $(call gb_Module_add_targets,chart2,\
 
 $(eval $(call gb_Module_add_slowcheck_targets,chart2,\
     CppunitTest_chart2_export \
+    CppunitTest_chart2_import \
 ))
 
 $(eval $(call gb_Module_add_subsequentcheck_targets,chart2,\
commit 03535b91605ae0cfdf3be5eb2dfdf5de5374bdb2
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue May 14 19:07:34 2013 +0200

    Remove obsolete RestrictedPath env var support
    
    Change-Id: Ia4ea7d60d7b69c863c1e891887060265e73e1cb6

diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
index 2f0ecf6..e9437fe 100644
--- a/desktop/source/app/app.cxx
+++ b/desktop/source/app/app.cxx
@@ -85,7 +85,6 @@
 #include <unotools/pathoptions.hxx>
 #include <svtools/miscopt.hxx>
 #include <svtools/menuoptions.hxx>
-#include <svl/folderrestriction.hxx>
 #include <rtl/logfile.hxx>
 #include <rtl/bootstrap.hxx>
 #include <vcl/help.hxx>
@@ -1517,18 +1516,6 @@ int Desktop::Main()
         SetSplashScreenProgress(40);
         RTL_LOGFILE_CONTEXT_TRACE( aLog, "} create SvtPathOptions and SvtLanguageOptions" );
 
-        // Check special env variable
-        std::vector< String > aUnrestrictedFolders;
-        svt::getUnrestrictedFolders( aUnrestrictedFolders );
-
-        if ( !aUnrestrictedFolders.empty() )
-        {
-            // Set different working directory. The first entry is
-            // the new work path.
-            String aWorkPath = aUnrestrictedFolders[0];
-            SvtPathOptions().SetWorkPath( aWorkPath );
-        }
-
         xDesktop = css::frame::Desktop::create( xContext );
 
         // create service for loadin SFX (still needed in startup)
diff --git a/fpicker/source/office/iodlg.cxx b/fpicker/source/office/iodlg.cxx
index 6787f8d..1ed7a8c 100644
--- a/fpicker/source/office/iodlg.cxx
+++ b/fpicker/source/office/iodlg.cxx
@@ -508,7 +508,6 @@ void SvtFileDialog::Init_Impl
     _pImp->_pFtFileName = new FixedText( this, SvtResId( FT_EXPLORERFILE_FILENAME ) );
 
     SvtURLBox* pURLBox = new SvtURLBox( this, SvtResId( ED_EXPLORERFILE_FILENAME ) );
-    pURLBox->SetUrlFilter( &m_aURLFilter );
     _pImp->_pEdFileName = pURLBox;
     _pImp->_pEdFileName->Show();
     pURLBox->SetSelectHdl( LINK( this, SvtFileDialog, EntrySelectHdl_Impl ) );
@@ -545,7 +544,6 @@ void SvtFileDialog::Init_Impl
     }
 
     _pImp->_pEdCurrentPath = new SvtURLBox( this, SvtResId(ED_EXPLORERFILE_CURRENTPATH) );
-    _pImp->_pEdCurrentPath->SetUrlFilter( &m_aURLFilter );
     _pImp->_pEdCurrentPath->Show();
 
     _pImp->_pBtnFileOpen = new PushButton( this, SvtResId( BTN_EXPLORERFILE_OPEN ) );
@@ -568,7 +566,6 @@ void SvtFileDialog::Init_Impl
     _pFileView = new SvtFileView( this, SvtResId( CTL_EXPLORERFILE_FILELIST ),
                                        FILEDLG_TYPE_PATHDLG == _pImp->_eDlgType,
                                        _pImp->_bMultiSelection );
-    _pFileView->SetUrlFilter( &m_aURLFilter );
     _pFileView->EnableAutoResize();
 
     _pFileView->SetHelpId( HID_FILEDLG_STANDARD );
@@ -1141,12 +1138,6 @@ IMPL_STATIC_LINK( SvtFileDialog, OpenHdl_Impl, void*, pVoid )
         {
             if ( aFileName != pThis->_pFileView->GetViewURL() )
             {
-                if ( !pThis->m_aURLFilter.isUrlAllowed( aFileName ) )
-                {
-                    pThis->simulateAccessDenied( aFileName );
-                    return 0;
-                }
-
                 pThis->OpenURL_Impl( aFileName );
             }
             else
@@ -1178,13 +1169,6 @@ IMPL_STATIC_LINK( SvtFileDialog, OpenHdl_Impl, void*, pVoid )
         return 0;
     }
 
-    // if restrictions for the allowed folders are in place, we need to do a check here
-    if ( !pThis->m_aURLFilter.isUrlAllowed( aFileObj.GetMainURL( INetURLObject::NO_DECODE ) ) )
-    {
-        pThis->simulateAccessDenied( aFileName );
-        return 0;
-    }
-
     switch ( pThis->_pImp->_eMode )
     {
         case FILEDLG_MODE_SAVE:
@@ -1669,7 +1653,7 @@ IMPL_LINK( SvtFileDialog, OpenDoneHdl_Impl, SvtFileView*, pView )
 {
     String sCurrentFolder( pView->GetViewURL() );
     // check if we can create new folders
-    EnableControl( _pImp->_pBtnNewFolder, ContentCanMakeFolder( sCurrentFolder ) && m_aURLFilter.isUrlAllowed( sCurrentFolder, false ) );
+    EnableControl( _pImp->_pBtnNewFolder, ContentCanMakeFolder( sCurrentFolder ) );
 
     // check if we can travel one level up
     bool bCanTravelUp = ContentHasParentFolder( pView->GetViewURL() );
@@ -1681,7 +1665,6 @@ IMPL_LINK( SvtFileDialog, OpenDoneHdl_Impl, SvtFileView*, pView )
             "SvtFileDialog::OpenDoneHdl_Impl: invalid current URL!" );
 
         aCurrentFolder.removeSegment();
-        bCanTravelUp &= m_aURLFilter.isUrlAllowed( aCurrentFolder.GetMainURL( INetURLObject::NO_DECODE ) );
     }
     EnableControl( _pImp->_pBtnUp, bCanTravelUp );
 
@@ -2131,11 +2114,6 @@ short SvtFileDialog::PrepareExecute()
         // - finally we're going to save that file, aren't we?
         m_aContent.enableOwnInteractionHandler(::svt::OFilePickerInteractionHandler::E_DOESNOTEXIST);
 
-    //.....................................................................
-    // care for possible restrictions on the paths we're allowed to show
-    if ( !m_aURLFilter.isUrlAllowed( _aPath ) )
-        _aPath = m_aURLFilter.getFilter()[0];
-
     // if applicable show filter
     _pImp->InitFilterList();
 
@@ -2327,7 +2305,6 @@ void SvtFileDialog::OpenURL_Impl( const String& _rURL )
 {
     _pFileView->EndInplaceEditing( false );
 
-    DBG_ASSERT( m_aURLFilter.isUrlAllowed( _rURL ), "SvtFileDialog::OpenURL_Impl: forbidden URL! Should have been handled by the caller!" );
     executeAsync( AsyncPickerAction::eOpenURL, _rURL, getMostCurrentFilter( _pImp ) );
 }
 
diff --git a/fpicker/source/office/iodlg.hxx b/fpicker/source/office/iodlg.hxx
index 21a2afd..208517a 100644
--- a/fpicker/source/office/iodlg.hxx
+++ b/fpicker/source/office/iodlg.hxx
@@ -34,8 +34,6 @@
 #include <com/sun/star/ui/dialogs/XDialogClosedListener.hpp>
 #include <unotools/confignode.hxx>
 #include "svl/inettype.hxx"
-#include "svl/urlfilter.hxx"
-#include <svl/restrictedpaths.hxx>
 #include "asyncfilepicker.hxx"
 #include "OfficeControlAccess.hxx"
 #include "fpsmartcontent.hxx"
@@ -105,7 +103,6 @@ private:
     ImageList                   m_aImages;
     ::svt::SmartContent         m_aContent;
 
-    ::svt::RestrictedPaths      m_aURLFilter;
     ::std::set< Control* >      m_aDisabledControls;
 
     ::utl::OConfigurationNode   m_aConfiguration;
@@ -262,10 +259,6 @@ public:
     void                        RemovablePlaceSelected(bool enable = true);
 
     void                        displayIOException( const String& _rURL, ::com::sun::star::ucb::IOErrorCode _eCode );
-    void                        simulateAccessDenied( const String& _rURL )
-    {
-        displayIOException( _rURL, ::com::sun::star::ucb::IOErrorCode_ACCESS_DENIED );
-    }
 
     // originally from VclFileDialog
     virtual sal_Bool                AddControl( Window* pControl, sal_Bool bNewLine = sal_False );
@@ -298,16 +291,6 @@ public:
     */
     void                        updateListboxLabelSizes();
 
-    /** checks URL access permissions
-
-        <p>with the "restriction" feature we have in the file dialog, it's possible that
-        only certain URLs can be browsed. This method checks whether a given URL belongs
-        to this set of permitted URLs.</p>
-
-        <p>If no "access restriction" is effective, this method always returns <TRUE/>.</p>
-    */
-    inline bool isUrlAllowed( const String& _rURL ) const { return m_aURLFilter.isUrlAllowed( _rURL ); }
-
 private:
     SvtFileDialogFilter_Impl*   implAddFilter( const String& _rFilter, const String& _rType );
 
diff --git a/fpicker/source/office/iodlgimp.cxx b/fpicker/source/office/iodlgimp.cxx
index 7848df7..310f501 100644
--- a/fpicker/source/office/iodlgimp.cxx
+++ b/fpicker/source/office/iodlgimp.cxx
@@ -182,26 +182,22 @@ void SvtUpButton_Impl::FillURLMenu( PopupMenu* _pMenu )
         aObject.removeSegment();
         String aParentURL(aObject.GetMainURL(INetURLObject::NO_DECODE));
 
-        if (GetDialogParent()->isUrlAllowed(aParentURL))
+        String aTitle;
+        // 97148# --------------------------------
+        if (!GetDialogParent()->ContentGetTitle(aParentURL, aTitle) || aTitle.Len() == 0)
+            aTitle = aObject.getName();
+
+        Image aImage = ( nCount > 1 ) // if nCount == 1 means workplace, which detects the wrong image
+            ? SvFileInformationManager::GetImage( aObject ) : aVolumeImage;
+
+        _pMenu->InsertItem( nItemId++, aTitle, aImage );
+        _aURLs.push_back(aParentURL);
+
+        if ( nCount == 1 )
         {
-            String aTitle;
-            // 97148# --------------------------------
-            if (!GetDialogParent()->ContentGetTitle(aParentURL, aTitle) || aTitle.Len() == 0)
-                aTitle = aObject.getName();
-
-            Image aImage = ( nCount > 1 ) // if nCount == 1 means workplace, which detects the wrong image
-                ? SvFileInformationManager::GetImage( aObject ) : aVolumeImage;
-
-            _pMenu->InsertItem( nItemId++, aTitle, aImage );
-            _aURLs.push_back(aParentURL);
-
-            if ( nCount == 1 )
-            {
-                // adjust the title of the top level entry (the workspace)
-                _pMenu->SetItemText( --nItemId, SvtSimpleResId( STR_SVT_MIMETYPE_CNT_FSYSBOX ) );
-            }
+            // adjust the title of the top level entry (the workspace)
+            _pMenu->SetItemText( --nItemId, SvtSimpleResId( STR_SVT_MIMETYPE_CNT_FSYSBOX ) );
         }
-
         --nCount;
     }
 }
diff --git a/include/svl/folderrestriction.hxx b/include/svl/folderrestriction.hxx
deleted file mode 100644
index 4ddb9d4..0000000
--- a/include/svl/folderrestriction.hxx
+++ /dev/null
@@ -1,47 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#ifndef SVTOOLS_FOLDER_RESTRICTION_HXX
-#define SVTOOLS_FOLDER_RESTRICTION_HXX
-
-#include "svl/svldllapi.h"
-#include <tools/string.hxx>
-
-#include <vector>
-
-//........................................................................
-namespace svt
-{
-//........................................................................
-
-    /** retrieves a list of folders which's access is not restricted.
-
-        <p>Note that this is not meant as security feature, but only as
-        method to restrict some UI presentation, such as browsing
-        in the file open dialog.</p>
-    */
-    SVL_DLLPUBLIC void getUnrestrictedFolders( ::std::vector< String >& _rFolders );
-
-//........................................................................
-}   // namespace svt
-//........................................................................
-
-#endif // SVTOOLS_FOLDER_RESTRICTION_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/svl/restrictedpaths.hxx b/include/svl/restrictedpaths.hxx
deleted file mode 100644
index 85326a5..0000000
--- a/include/svl/restrictedpaths.hxx
+++ /dev/null
@@ -1,75 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#ifndef SVTOOLS_RESTRICTEDPATHS_HXX
-#define SVTOOLS_RESTRICTEDPATHS_HXX
-
-#include <svl/urlfilter.hxx>
-#include <svl/svldllapi.h>
-
-#include <vector>
-
-namespace svt
-{
-    class SVL_DLLPUBLIC RestrictedPaths : public IUrlFilter
-    {
-    private:
-        ::std::vector< OUString >     m_aUnrestrictedURLs;
-        bool                        m_bFilterIsEnabled;
-
-    public:
-        RestrictedPaths();
-        virtual ~RestrictedPaths();
-
-        inline bool hasFilter() const { return !m_aUnrestrictedURLs.empty(); }
-        inline const ::std::vector< OUString >& getFilter() const { return m_aUnrestrictedURLs; }
-
-        inline void enableFilter( bool _bEnable ) { m_bFilterIsEnabled = _bEnable; }
-        inline bool isFilterEnabled() const { return m_bFilterIsEnabled; }
-
-    public:
-        /** checks URL access permissions
-
-            <p>with the "restriction" feature we have in the file dialog, it's possible that
-            only certain URLs can be browsed. This method checks whether a given URL belongs
-            to this set of permitted URLs.</p>
-
-            <p>If no "access restriction" is effective, this method always returns <TRUE/>.</p>
-        */
-        virtual bool                isUrlAllowed( const OUString& _rURL ) const;
-
-        /** checks URL access permissions
-
-            <p>with the "restriction" feature we have in the file dialog, it's possible that
-            only certain URLs can be browsed. This method checks whether a given URL belongs
-            to this set of permitted URLs.</p>
-
-            <p>Default behavior allows access to parent folder of a restricted folder (but not to its siblings).
-            If allowParents is set to <FALSE/> parent folders will be treated as forbidden.
-
-            <p>If no "access restriction" is effective, this method always returns <TRUE/>.</p>
-        */
-        bool                        isUrlAllowed( const OUString& _rURL, bool allowParents ) const;
-    };
-
-}   // namespace svt
-
-#endif  // SVTOOLS_RESTRICTEDPATHS_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/svl/urlfilter.hxx b/include/svl/urlfilter.hxx
index abcf0fd..d685015 100644
--- a/include/svl/urlfilter.hxx
+++ b/include/svl/urlfilter.hxx
@@ -23,18 +23,6 @@
 #include <tools/wldcrd.hxx>
 #include <functional>
 #include <vector>
-/** filters allowed URLs
-*/
-class IUrlFilter
-{
-public:
-    virtual bool isUrlAllowed( const OUString& _rURL ) const = 0;
-
-protected:
-    virtual inline ~IUrlFilter() = 0;
-};
-
-inline IUrlFilter::~IUrlFilter() {}
 
 struct FilterMatch : public ::std::unary_function< bool, WildCard >
 {
diff --git a/include/svtools/fileview.hxx b/include/svtools/fileview.hxx
index d7cb77a..917cfab 100644
--- a/include/svtools/fileview.hxx
+++ b/include/svtools/fileview.hxx
@@ -41,7 +41,6 @@ class ViewTabListBox_Impl;
 class SvtFileView_Impl;
 class SvTreeListEntry;
 class HeaderBar;
-class IUrlFilter;
 
 /// the result of an action in the FileView
 enum FileViewResult
@@ -192,8 +191,6 @@ public:
     String                  GetConfigString() const;
     void                    SetConfigString( const String& rCfgStr );
 
-    void                    SetUrlFilter( const IUrlFilter* _pFilter );
-
     void                    EndInplaceEditing( bool _bCancel );
 
 protected:
diff --git a/include/svtools/inettbc.hxx b/include/svtools/inettbc.hxx
index a8e85ea..3b8dbca 100644
--- a/include/svtools/inettbc.hxx
+++ b/include/svtools/inettbc.hxx
@@ -27,7 +27,6 @@
 
 #include <vcl/combobox.hxx>
 
-class IUrlFilter;
 class SvtMatchContext_Impl;
 class SvtURLBox_Impl;
 class SVT_DLLPUBLIC SvtURLBox : public ComboBox
@@ -83,7 +82,6 @@ public:
     static String                   ParseSmart( String aText, String aBaseURL, String aWorkDir );
 
     void                            SetFilter(const String& _sFilter);
-    void                            SetUrlFilter( const IUrlFilter* _pFilter );
 
     inline void                     EnableAutocompletion( sal_Bool _bEnable = sal_True )
                                         { bIsAutoCompleteEnabled = _bEnable; }
diff --git a/sfx2/source/inet/inettbc.cxx b/sfx2/source/inet/inettbc.cxx
index cb91456..d3920d4 100644
--- a/sfx2/source/inet/inettbc.cxx
+++ b/sfx2/source/inet/inettbc.cxx
@@ -27,7 +27,6 @@
 #include <svl/eitem.hxx>
 #include <svl/stritem.hxx>
 #include <unotools/historyoptions.hxx>
-#include <svl/folderrestriction.hxx>
 #include <vcl/toolbox.hxx>
 #include <toolkit/unohlp.hxx>
 #include <osl/thread.hxx>
diff --git a/svl/Library_svl.mk b/svl/Library_svl.mk
index b97387d..922893e 100644
--- a/svl/Library_svl.mk
+++ b/svl/Library_svl.mk
@@ -112,7 +112,6 @@ $(eval $(call gb_Library_add_exception_objects,svl,\
     $(if $(filter DESKTOP,$(BUILD_TYPE)),\
         svl/source/misc/documentlockfile) \
     svl/source/misc/filenotation \
-    svl/source/misc/folderrestriction \
     svl/source/misc/fstathelper \
     svl/source/misc/getstringresource \
     svl/source/misc/inethist \
@@ -120,7 +119,6 @@ $(eval $(call gb_Library_add_exception_objects,svl,\
     svl/source/misc/lngmisc \
     svl/source/misc/lockfilecommon \
     svl/source/misc/ownlist \
-    svl/source/misc/restrictedpaths \
     svl/source/misc/sharecontrolfile \
     svl/source/misc/strmadpt \
     svl/source/misc/urihelper \
diff --git a/svl/source/misc/folderrestriction.cxx b/svl/source/misc/folderrestriction.cxx
deleted file mode 100644
index 1756251..0000000
--- a/svl/source/misc/folderrestriction.cxx
+++ /dev/null
@@ -1,98 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-
-#include <svl/folderrestriction.hxx>
-#include "osl/process.h"
-#include "tools/urlobj.hxx"
-#include "unotools/localfilehelper.hxx"
-
-//-----------------------------------------------------------------------------
-
-static void convertStringListToUrls (
-    const OUString& _rColonSeparatedList, ::std::vector< String >& _rTokens, bool _bFinalSlash )
-{
-    const sal_Unicode cSeparator =
-#if defined(WNT)
-        ';'
-#else
-        ':'
-#endif
-            ;
-
-    sal_Int32 nIndex = 0;
-    do
-    {
-        // the current token in the list
-        OUString sCurrentToken = _rColonSeparatedList.getToken( 0, cSeparator, nIndex );
-        if (!sCurrentToken.isEmpty())
-        {
-            INetURLObject aCurrentURL;
-
-            OUString sURL;
-            if ( ::utl::LocalFileHelper::ConvertPhysicalNameToURL( sCurrentToken, sURL ) )
-                aCurrentURL = INetURLObject( sURL );
-            else
-            {
-                // smart URL parsing, assuming FILE protocol
-                aCurrentURL = INetURLObject( sCurrentToken, INET_PROT_FILE );
-            }
-
-            if ( _bFinalSlash )
-                aCurrentURL.setFinalSlash( );
-            else
-                aCurrentURL.removeFinalSlash( );
-            _rTokens.push_back( aCurrentURL.GetMainURL( INetURLObject::NO_DECODE ) );
-        }
-    }
-    while ( nIndex >= 0 );
-}
-
-/** retrieves the value of an environment variable
-    @return <TRUE/> if and only if the retrieved string value is not empty
-*/
-static bool getEnvironmentValue( const sal_Char* _pAsciiEnvName, OUString& _rValue )
-{
-    _rValue = OUString();
-    OUString sEnvName = OUString::createFromAscii( _pAsciiEnvName );
-    osl_getEnvironment( sEnvName.pData, &_rValue.pData );
-    return !_rValue.isEmpty();
-}
-
-//-----------------------------------------------------------------------------
-
-namespace svt
-{
-
-    void getUnrestrictedFolders( ::std::vector< String >& _rFolders )
-    {
-        _rFolders.resize( 0 );
-        OUString sRestrictedPathList;
-        if ( getEnvironmentValue( "RestrictedPath", sRestrictedPathList ) )
-        {
-            // append a final slash. This ensures that when we later on check
-            // for unrestricted paths, we don't allow paths like "/home/user35" just because
-            // "/home/user3" is allowed - with the final slash, we make it "/home/user3/".
-            convertStringListToUrls( sRestrictedPathList, _rFolders, true );
-        }
-    }
-
-} // namespace svt
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svl/source/misc/restrictedpaths.cxx b/svl/source/misc/restrictedpaths.cxx
deleted file mode 100644
index c1b7f86..0000000
--- a/svl/source/misc/restrictedpaths.cxx
+++ /dev/null
@@ -1,204 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <svl/restrictedpaths.hxx>
-
-#include <algorithm>
-#include <osl/process.h>
-#include <tools/urlobj.hxx>
-#include <unotools/localfilehelper.hxx>
-#include <unotools/syslocale.hxx>
-
-namespace svt
-{
-    namespace
-    {
-        // ----------------------------------------------------------------
-        /** retrieves the value of an environment variable
-            @return <TRUE/> if and only if the retrieved string value is not empty
-        */
-        bool lcl_getEnvironmentValue( const sal_Char* _pAsciiEnvName, OUString& _rValue )
-        {
-            _rValue = OUString();
-            OUString sEnvName = OUString::createFromAscii( _pAsciiEnvName );
-            osl_getEnvironment( sEnvName.pData, &_rValue.pData );
-            return !_rValue.isEmpty();
-        }
-
-        //-----------------------------------------------------------------
-        void lcl_convertStringListToUrls( const OUString& _rColonSeparatedList, ::std::vector< OUString >& _rTokens )
-        {
-            const sal_Unicode cSeparator =
-    #if defined(WNT)
-                ';'
-    #else
-                ':'
-    #endif
-                ;
-            sal_Int32 nIndex = 0;
-            do
-            {
-                // the current token in the list
-                OUString sCurrentToken = _rColonSeparatedList.getToken( 0, cSeparator, nIndex );
-                if ( !sCurrentToken.isEmpty() )
-                {
-                    INetURLObject aCurrentURL;
-
-                    OUString sURL;
-                    if ( ::utl::LocalFileHelper::ConvertPhysicalNameToURL( sCurrentToken, sURL ) )
-                        aCurrentURL = INetURLObject( sURL );
-                    else
-                    {
-                        // smart URL parsing, assuming FILE protocol
-                        aCurrentURL = INetURLObject( sCurrentToken, INET_PROT_FILE );
-                    }
-
-                    aCurrentURL.setFinalSlash( );
-                    _rTokens.push_back( aCurrentURL.GetMainURL( INetURLObject::NO_DECODE ) );
-                }
-            }
-            while ( nIndex >= 0 );
-        }
-
-    }
-
-    //=====================================================================
-    //= CheckURLAllowed
-    //=====================================================================
-    struct CheckURLAllowed
-    {
-    protected:
-    #ifdef WNT
-        SvtSysLocale    m_aSysLocale;
-    #endif
-        OUString        m_sCheckURL;    // the URL to check
-        bool            m_bAllowParent;
-    public:
-        inline CheckURLAllowed( const OUString& _rCheckURL, bool bAllowParent = true )
-            : m_sCheckURL( _rCheckURL )
-            , m_bAllowParent( bAllowParent )
-        {
-    #ifdef WNT
-            // on windows, assume that the relevant file systems are case insensitive,
-            // thus normalize the URL
-            m_sCheckURL = m_aSysLocale.GetCharClass().lowercase( m_sCheckURL, 0, m_sCheckURL.getLength() );
-    #endif
-        }
-
-        bool operator()( const OUString& _rApprovedURL )
-        {
-    #ifdef WNT
-            // on windows, assume that the relevant file systems are case insensitive,
-            // thus normalize the URL
-            OUString sApprovedURL( m_aSysLocale.GetCharClass().lowercase( _rApprovedURL, 0, _rApprovedURL.getLength() ) );
-    #else
-            OUString sApprovedURL( _rApprovedURL );
-    #endif
-
-            sal_Int32 nLenApproved = sApprovedURL.getLength();
-            sal_Int32 nLenChecked  = m_sCheckURL.getLength();
-
-            if ( nLenApproved > nLenChecked )
-            {
-                if ( m_bAllowParent )
-                {
-                    if ( sApprovedURL.indexOf( m_sCheckURL ) == 0 )
-                    {
-                        if ( ( m_sCheckURL[ nLenChecked - 1 ] == '/' )
-                            || ( sApprovedURL[ nLenChecked ] == '/' ) )
-                            return true;
-                    }
-                }
-                else
-                {
-                    // just a difference in final slash?
-                    if ( ( nLenApproved == ( nLenChecked + 1 ) ) &&
-                        ( sApprovedURL[ nLenApproved - 1 ] == '/' ) )
-                        return true;
-                }
-                return false;
-            }
-            else if ( nLenApproved < nLenChecked )
-            {
-                if ( m_sCheckURL.indexOf( sApprovedURL ) == 0 )
-                {
-                    if ( ( sApprovedURL[ nLenApproved - 1 ] == '/' )
-                        || ( m_sCheckURL[ nLenApproved ] == '/' ) )
-                        return true;
-                }
-                return false;
-            }
-            else
-            {
-                // strings have equal length
-                return ( sApprovedURL == m_sCheckURL );
-            }
-        }
-    };
-
-    //=====================================================================
-    //= RestrictedPaths
-    //=====================================================================
-    //---------------------------------------------------------------------
-    RestrictedPaths::RestrictedPaths()
-        :m_bFilterIsEnabled( true )
-    {
-        OUString sRestrictedPathList;
-        if ( lcl_getEnvironmentValue( "RestrictedPath", sRestrictedPathList ) )
-            // append a final slash. This ensures that when we later on check
-            // for unrestricted paths, we don't allow paths like "/home/user35" just because
-            // "/home/user3" is allowed - with the final slash, we make it "/home/user3/".
-            lcl_convertStringListToUrls( sRestrictedPathList, m_aUnrestrictedURLs );
-    }
-
-    RestrictedPaths::~RestrictedPaths() {}
-
-    // --------------------------------------------------------------------
-    bool RestrictedPaths::isUrlAllowed( const OUString& _rURL ) const
-    {
-        if ( m_aUnrestrictedURLs.empty() || !m_bFilterIsEnabled )
-            return true;
-
-        ::std::vector< OUString >::const_iterator aApprovedURL = ::std::find_if(
-            m_aUnrestrictedURLs.begin(),
-            m_aUnrestrictedURLs.end(),
-            CheckURLAllowed( _rURL, true )
-        );
-
-        return ( aApprovedURL != m_aUnrestrictedURLs.end() );
-    }
-
-    // --------------------------------------------------------------------
-    bool RestrictedPaths::isUrlAllowed( const OUString& _rURL, bool allowParents ) const
-    {
-        if ( m_aUnrestrictedURLs.empty() || !m_bFilterIsEnabled )
-            return true;
-
-        ::std::vector< OUString >::const_iterator aApprovedURL = ::std::find_if(
-            m_aUnrestrictedURLs.begin(),
-            m_aUnrestrictedURLs.end(),
-            CheckURLAllowed( _rURL, allowParents )
-        );
-
-        return ( aApprovedURL != m_aUnrestrictedURLs.end() );
-    }
-
-}   // namespace svt
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svtools/inc/pch/precompiled_svt.hxx b/svtools/inc/pch/precompiled_svt.hxx
index 0451515..ac4215d 100644
--- a/svtools/inc/pch/precompiled_svt.hxx
+++ b/svtools/inc/pch/precompiled_svt.hxx
@@ -356,7 +356,6 @@
 #include <svl/poolitem.hxx>
 #include <svl/smplhint.hxx>
 #include <svl/stritem.hxx>
-#include <svl/urlfilter.hxx>
 #include <svl/zforlist.hxx>
 #include <svl/zformat.hxx>
 #include <toolkit/awt/vclxaccessiblecomponent.hxx>
diff --git a/svtools/source/contnr/contentenumeration.cxx b/svtools/source/contnr/contentenumeration.cxx
index decda28..4a0db74 100644
--- a/svtools/source/contnr/contentenumeration.cxx
+++ b/svtools/source/contnr/contentenumeration.cxx
@@ -18,7 +18,6 @@
  */
 
 #include "contentenumeration.hxx"
-#include <svl/urlfilter.hxx>
 #include <svtools/inettbc.hxx>
 #include <svtools/imagemgr.hxx>
 
@@ -89,7 +88,6 @@ namespace svt
         ,m_rContent              ( _rContentToFill )
         ,m_rContentMutex         ( _rContentMutex  )
         ,m_xCommandEnv           ( _rxCommandEnv   )
-        ,m_pFilter               ( NULL            )
         ,m_pTranslator           ( _pTranslator    )
         ,m_bCancelled            ( false           )
         ,m_rBlackList            ( ::com::sun::star::uno::Sequence< OUString >() )
@@ -108,7 +106,6 @@ namespace svt
         m_bCancelled = true;
         m_pResultHandler = NULL;
         m_pTranslator = NULL;
-        m_pFilter = NULL;
         m_aFolder.aContent = ::ucbhelper::Content();
         m_aFolder.sURL = String();
     }
@@ -116,13 +113,11 @@ namespace svt
     //--------------------------------------------------------------------
     EnumerationResult FileViewContentEnumerator::enumerateFolderContentSync(
         const FolderDescriptor& _rFolder,
-        const IUrlFilter* _pFilter,
         const ::com::sun::star::uno::Sequence< OUString >& rBlackList )
     {
         {
             ::osl::MutexGuard aGuard( m_aMutex );
             m_aFolder = _rFolder;
-            m_pFilter = _pFilter;
             m_pResultHandler = NULL;
             m_rBlackList = rBlackList;
         }
@@ -131,11 +126,10 @@ namespace svt
 
     //--------------------------------------------------------------------
     void FileViewContentEnumerator::enumerateFolderContent(
-        const FolderDescriptor& _rFolder, const IUrlFilter* _pFilter, IEnumerationResultHandler* _pResultHandler )
+        const FolderDescriptor& _rFolder, IEnumerationResultHandler* _pResultHandler )
     {
         ::osl::MutexGuard aGuard( m_aMutex );
         m_aFolder = _rFolder;
-        m_pFilter = _pFilter;
         m_pResultHandler = _pResultHandler;
 
         OSL_ENSURE( m_aFolder.aContent.get().is() || m_aFolder.sURL.Len(),
@@ -240,9 +234,6 @@ namespace svt
                             // check for restrictions
                             {
                                 ::osl::MutexGuard aGuard( m_aMutex );
-                                if ( m_pFilter && !m_pFilter->isUrlAllowed( sRealURL ) )
-                                    continue;
-
                                 if ( /* m_rBlackList.hasElements() && */ URLOnBlackList ( sRealURL ) )
                                     continue;
                             }
diff --git a/svtools/source/contnr/contentenumeration.hxx b/svtools/source/contnr/contentenumeration.hxx
index ab4c344..95da38a 100644
--- a/svtools/source/contnr/contentenumeration.hxx
+++ b/svtools/source/contnr/contentenumeration.hxx
@@ -29,7 +29,6 @@
 #include <tools/string.hxx>
 #include <vcl/image.hxx>
 
-class IUrlFilter;
 //........................................................................
 namespace svt
 {
@@ -193,7 +192,6 @@ namespace svt
         FolderDescriptor                m_aFolder;
         ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XCommandEnvironment >
                                         m_xCommandEnv;
-        const IUrlFilter*               m_pFilter;
         const IContentTitleTranslation* m_pTranslator;
         IEnumerationResultHandler*      m_pResultHandler;
         bool                            m_bCancelled;
@@ -234,7 +232,6 @@ namespace svt
         */
         void    enumerateFolderContent(
                     const FolderDescriptor& _rFolder,
-                    const IUrlFilter* _pFilter,
                     IEnumerationResultHandler* _pResultHandler
                 );
 
@@ -242,7 +239,6 @@ namespace svt
         */
         EnumerationResult   enumerateFolderContentSync(
                     const FolderDescriptor& _rFolder,
-                    const IUrlFilter* _pFilter,
                     const ::com::sun::star::uno::Sequence< OUString >& rBlackList = ::com::sun::star::uno::Sequence< OUString >()
                 );
 
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index 7a99e67..f8104b6 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -461,7 +461,6 @@ public:
 
     ViewTabListBox_Impl*    mpView;
     NameTranslator_Impl*    mpNameTrans;
-    const IUrlFilter*       mpUrlFilter;
     sal_uInt16              mnSortColumn;
     sal_Bool                mbAscending     : 1;
     sal_Bool                mbOnlyFolder    : 1;
@@ -1623,12 +1622,6 @@ void SvtFileView::SetConfigString( const String& rCfgStr )
 }
 
 // -----------------------------------------------------------------------
-void SvtFileView::SetUrlFilter( const IUrlFilter* _pFilter )
-{
-    mpImp->mpUrlFilter = _pFilter;
-}
-
-// -----------------------------------------------------------------------
 void SvtFileView::StateChanged( StateChangedType nStateChange )
 {
     if ( nStateChange == STATE_CHANGE_ENABLE )
@@ -1700,7 +1693,6 @@ SvtFileView_Impl::SvtFileView_Impl( SvtFileView* pAntiImpl, Reference < XCommand
     ,m_bRunningAsyncAction      ( false )
     ,m_bAsyncActionCancelled    ( false )
     ,mpNameTrans                ( NULL )
-    ,mpUrlFilter                ( NULL )
     ,mnSortColumn               ( COLUMN_TITLE )
     ,mbAscending                ( sal_True )
     ,mbOnlyFolder               ( bOnlyFolder )
@@ -1779,7 +1771,7 @@ FileViewResult SvtFileView_Impl::GetFolderContent_Impl(
 
     if ( !pAsyncDescriptor )
     {
-        ::svt::EnumerationResult eResult = m_pContentEnumerator->enumerateFolderContentSync( _rFolder, mpUrlFilter, rBlackList );
+        ::svt::EnumerationResult eResult = m_pContentEnumerator->enumerateFolderContentSync( _rFolder, rBlackList );
         if ( ::svt::SUCCESS == eResult )
         {
             implEnumerationSuccess();
@@ -1809,7 +1801,7 @@ FileViewResult SvtFileView_Impl::GetFolderContent_Impl(
     pTimeout->Seconds = nMinTimeout / 1000L;
     pTimeout->Nanosec = ( nMinTimeout % 1000L ) * 1000000L;
 
-    m_pContentEnumerator->enumerateFolderContent( _rFolder, mpUrlFilter, this );
+    m_pContentEnumerator->enumerateFolderContent( _rFolder, this );
 
     // wait until the enumeration is finished
     // for this, release our own mutex (which is used by the enumerator thread)
diff --git a/svtools/source/contnr/templwin.cxx b/svtools/source/contnr/templwin.cxx
index a7ff10c..3cb54c3 100644
--- a/svtools/source/contnr/templwin.cxx
+++ b/svtools/source/contnr/templwin.cxx
@@ -529,15 +529,7 @@ void SvtFileViewWindow_Impl::OpenFolder( const String& rURL )
 
     rParent.SetPrevLevelButtonState( rURL );
 
-    aFileView.SetUrlFilter( &aURLFilter );
-
-    INetProtocol eProt = INetURLObject( rURL ).GetProtocol();
-    bIsTemplateFolder = ( eProt == INET_PROT_VND_SUN_STAR_HIER );
-    bool isNewDocumentFolder = ( eProt == INET_PROT_PRIVATE );
-
-    aURLFilter.enableFilter( !bIsTemplateFolder && !isNewDocumentFolder );
-
-    if ( isNewDocumentFolder )
+    if ( INetURLObject( rURL ).GetProtocol() == INET_PROT_PRIVATE )
     {
         aFileView.EnableNameReplacing( sal_False );
         aFileView.Initialize( GetNewDocContents() );
diff --git a/svtools/source/contnr/templwin.hxx b/svtools/source/contnr/templwin.hxx
index 3d2240c..19cdfc1 100644
--- a/svtools/source/contnr/templwin.hxx
+++ b/svtools/source/contnr/templwin.hxx
@@ -27,7 +27,6 @@
 #include <svtools/fileview.hxx>
 #include <svtools/ivctrl.hxx>
 #include <svtools/svmedit2.hxx>
-#include <svl/restrictedpaths.hxx>
 #include <com/sun/star/frame/XDispatch.hpp>
 #include <com/sun/star/lang/Locale.hpp>
 
@@ -122,8 +121,6 @@ private:
     String              aFolderURL;
     String              aMyDocumentsURL;
     String              aSamplesFolderURL;
-    ::svt::RestrictedPaths
-                        aURLFilter;
 
     sal_Bool            bIsTemplateFolder;
 
diff --git a/svtools/source/control/inettbc.cxx b/svtools/source/control/inettbc.cxx
index 2859c10..917639d 100644
--- a/svtools/source/control/inettbc.cxx
+++ b/svtools/source/control/inettbc.cxx
@@ -79,13 +79,11 @@ class SvtURLBox_Impl
 public:
     std::vector<OUString>      aURLs;
     std::vector<OUString>      aCompletions;
-    const IUrlFilter*               pUrlFilter;
     ::std::vector< WildCard >       m_aFilters;
 
     static sal_Bool TildeParsing( String& aText, String& aBaseUrl );
 
     inline SvtURLBox_Impl( )
-        :pUrlFilter( NULL )
     {
         FilterMatch::createWildCardFilterList(String(),m_aFilters);
     }
@@ -242,14 +240,6 @@ IMPL_STATIC_LINK( SvtMatchContext_Impl, Select_Impl, void*, )
             // note: if this doesn't work, we're not interested in: we're checking the
             // untouched sCompletion then
 
-        if ( pBox->pImp->pUrlFilter )
-        {
-            if ( !pBox->pImp->pUrlFilter->isUrlAllowed( sURL ) )
-            {   // this URL is not allowed
-                bValidCompletionsFiltered = true;
-                continue;
-            }
-        }
         if ( !sURL.isEmpty() && ( sURL[sURL.getLength()-1] != '/' ))
         {
             String sUpperURL( sURL );
@@ -985,7 +975,7 @@ void SvtURLBox::UpdatePicklistForSmartProtocol_Impl()
 
                     String aURL( aCurObj.GetMainURL( INetURLObject::DECODE_WITH_CHARSET ) );
 
-                    if ( aURL.Len() && ( !pImp->pUrlFilter || pImp->pUrlFilter->isUrlAllowed( aURL ) ) )
+                    if ( aURL.Len() )
                     {
                         sal_Bool bFound = (aURL.GetChar(aURL.Len()-1) == '/' );
                         if ( !bFound )
@@ -1387,11 +1377,6 @@ sal_Bool SvtURLBox_Impl::TildeParsing(
     return sal_True;
 }
 
-void SvtURLBox::SetUrlFilter( const IUrlFilter* _pFilter )
-{
-    pImp->pUrlFilter = _pFilter;
-}
-
 void SvtURLBox::SetFilter(const String& _sFilter)
 {
     pImp->m_aFilters.clear();


More information about the Libreoffice-commits mailing list