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

Noel Grandin noel.grandin at collabora.co.uk
Fri Oct 6 11:07:59 UTC 2017


 include/unotools/pathoptions.hxx            |    3 +++
 sfx2/source/appl/appcfg.cxx                 |    9 +++++++++
 svtools/source/misc/templatefoldercache.cxx |   14 +++++++-------
 unotools/source/config/pathoptions.cxx      |   18 +++++++++++++++++-
 4 files changed, 36 insertions(+), 8 deletions(-)

New commits:
commit aacf28c8ab48ca969308a2fb1bdff32e159228db
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Fri Oct 6 12:04:39 2017 +0200

    Revert "remove handing of deprecated Storage path option"
    
    This reverts commit b71fdc67ed1efd421b9b1c747708958e8e09f73c.
    
    since Jochen indicates that there is a bug in it
    
    Change-Id: I786a7885a308cb43b99d9930ed385a75bbcd9495
    Reviewed-on: https://gerrit.libreoffice.org/43192
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/include/unotools/pathoptions.hxx b/include/unotools/pathoptions.hxx
index 99791e5cc0fc..37e172632298 100644
--- a/include/unotools/pathoptions.hxx
+++ b/include/unotools/pathoptions.hxx
@@ -56,6 +56,7 @@ public:
         PATH_MODULE,
         PATH_PALETTE,
         PATH_PLUGIN,
+        PATH_STORAGE,
         PATH_TEMP,
         PATH_TEMPLATE,
         PATH_USERCONFIG,
@@ -87,6 +88,7 @@ public:
     const OUString& GetModulePath() const;
     const OUString& GetPalettePath() const;
     const OUString& GetPluginPath() const;
+    const OUString& GetStoragePath() const;
     const OUString& GetTempPath() const;
     const OUString& GetTemplatePath() const;
     const OUString& GetUserConfigPath() const;
@@ -112,6 +114,7 @@ public:
     void            SetModulePath( const OUString& rPath );
     void            SetPalettePath( const OUString& rPath );
     void            SetPluginPath( const OUString& rPath );
+    void            SetStoragePath( const OUString& rPath );
     void            SetTempPath( const OUString& rPath );
     void            SetTemplatePath( const OUString& rPath );
     void            SetUserConfigPath( const OUString& rPath );
diff --git a/sfx2/source/appl/appcfg.cxx b/sfx2/source/appl/appcfg.cxx
index 27ec3ad2f1df..7153cf17b4d1 100644
--- a/sfx2/source/appl/appcfg.cxx
+++ b/sfx2/source/appl/appcfg.cxx
@@ -433,6 +433,7 @@ void SfxApplication::GetOptions( SfxItemSet& rSet )
                             case SvtPathOptions::PATH_MODULE:       osl::FileBase::getFileURLFromSystemPath( aPathCfg.GetModulePath(), aValue ); break;
                             case SvtPathOptions::PATH_PALETTE:      aValue = aPathCfg.GetPalettePath(); break;
                             case SvtPathOptions::PATH_PLUGIN:       osl::FileBase::getFileURLFromSystemPath( aPathCfg.GetPluginPath(), aValue ); break;
+                            case SvtPathOptions::PATH_STORAGE:      osl::FileBase::getFileURLFromSystemPath( aPathCfg.GetStoragePath(), aValue ); break;
                             case SvtPathOptions::PATH_TEMP:         aValue = aPathCfg.GetTempPath(); break;
                             case SvtPathOptions::PATH_TEMPLATE:     aValue = aPathCfg.GetTemplatePath(); break;
                             case SvtPathOptions::PATH_USERCONFIG:   aValue = aPathCfg.GetUserConfigPath(); break;
@@ -790,6 +791,14 @@ void SfxApplication::SetOptions(const SfxItemSet &rSet)
                         break;
                     }
 
+                    case SvtPathOptions::PATH_STORAGE:
+                    {
+                        OUString aTmp;
+                        if( osl::FileBase::getSystemPathFromFileURL( sValue, aTmp ) == osl::FileBase::E_None )
+                            aPathOptions.SetStoragePath( aTmp );
+                        break;
+                    }
+
                     case SvtPathOptions::PATH_TEMP:         aPathOptions.SetTempPath( sValue );break;
                     case SvtPathOptions::PATH_TEMPLATE:     aPathOptions.SetTemplatePath( sValue );break;
                     case SvtPathOptions::PATH_USERCONFIG:   aPathOptions.SetUserConfigPath( sValue );break;
diff --git a/svtools/source/misc/templatefoldercache.cxx b/svtools/source/misc/templatefoldercache.cxx
index ab3db5afa563..f83e11dcdf0a 100644
--- a/svtools/source/misc/templatefoldercache.cxx
+++ b/svtools/source/misc/templatefoldercache.cxx
@@ -691,20 +691,20 @@ namespace svt
         // close any old stream instance
         closeCacheStream( );
 
-        // get the temp directory
-        OUString sTempURL = implParseSmart( SvtPathOptions().GetTempPath() );
-        INetURLObject aTempURL( sTempURL );
-        if ( INetProtocol::NotValid == aTempURL.GetProtocol() )
+        // get the storage directory
+        OUString sStorageURL = implParseSmart( SvtPathOptions().GetStoragePath() );
+        INetURLObject aStorageURL( sStorageURL );
+        if ( INetProtocol::NotValid == aStorageURL.GetProtocol() )
         {
-            OSL_FAIL( "TemplateFolderCacheImpl::openCacheStream: invalid temp path!" );
+            OSL_FAIL( "TemplateFolderCacheImpl::openCacheStream: invalid storage path!" );
             return false;
         }
 
         // append our name
-        aTempURL.Append( ".templdir.cache" );
+        aStorageURL.Append( ".templdir.cache" );
 
         // open the stream
-        m_pCacheStream = UcbStreamHelper::CreateStream( aTempURL.GetMainURL( INetURLObject::DecodeMechanism::ToIUri ),
+        m_pCacheStream = UcbStreamHelper::CreateStream( aStorageURL.GetMainURL( INetURLObject::DecodeMechanism::ToIUri ),
             _bForRead ? StreamMode::READ | StreamMode::NOCREATE : StreamMode::WRITE | StreamMode::TRUNC );
         DBG_ASSERT( m_pCacheStream, "TemplateFolderCacheImpl::openCacheStream: could not open/create the cache stream!" );
         if ( m_pCacheStream && m_pCacheStream->GetErrorCode() )
diff --git a/unotools/source/config/pathoptions.cxx b/unotools/source/config/pathoptions.cxx
index d68d4da44c5b..998ff53d0072 100644
--- a/unotools/source/config/pathoptions.cxx
+++ b/unotools/source/config/pathoptions.cxx
@@ -112,6 +112,7 @@ class SvtPathOptions_Impl
         const OUString& GetModulePath() { return GetPath( SvtPathOptions::PATH_MODULE ); }
         const OUString& GetPalettePath() { return GetPath( SvtPathOptions::PATH_PALETTE ); }
         const OUString& GetPluginPath() { return GetPath( SvtPathOptions::PATH_PLUGIN ); }
+        const OUString& GetStoragePath() { return GetPath( SvtPathOptions::PATH_STORAGE ); }
         const OUString& GetTempPath() { return GetPath( SvtPathOptions::PATH_TEMP ); }
         const OUString& GetTemplatePath() { return GetPath( SvtPathOptions::PATH_TEMPLATE ); }
         const OUString& GetUserConfigPath() { return GetPath( SvtPathOptions::PATH_USERCONFIG ); }
@@ -139,6 +140,7 @@ class SvtPathOptions_Impl
         void            SetModulePath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_MODULE, rPath ); }
         void            SetPalettePath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_PALETTE, rPath ); }
         void            SetPluginPath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_PLUGIN, rPath ); }
+        void            SetStoragePath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_STORAGE, rPath ); }
         void            SetTempPath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_TEMP, rPath ); }
         void            SetTemplatePath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_TEMPLATE, rPath ); }
         void            SetUserConfigPath( const OUString& rPath ) { SetPath( SvtPathOptions::PATH_USERCONFIG, rPath ); }
@@ -184,6 +186,7 @@ static const PropertyStruct aPropNames[] =
     { "Module",         SvtPathOptions::PATH_MODULE         },
     { "Palette",        SvtPathOptions::PATH_PALETTE        },
     { "Plugin",         SvtPathOptions::PATH_PLUGIN         },
+    { "Storage",        SvtPathOptions::PATH_STORAGE        },
     { "Temp",           SvtPathOptions::PATH_TEMP           },
     { "Template",       SvtPathOptions::PATH_TEMPLATE       },
     { "UserConfig",     SvtPathOptions::PATH_USERCONFIG     },
@@ -223,7 +226,8 @@ const OUString& SvtPathOptions_Impl::GetPath( SvtPathOptions::Paths ePath )
             ePath == SvtPathOptions::PATH_FILTER    ||
             ePath == SvtPathOptions::PATH_HELP      ||
             ePath == SvtPathOptions::PATH_MODULE    ||
-            ePath == SvtPathOptions::PATH_PLUGIN
+            ePath == SvtPathOptions::PATH_PLUGIN    ||
+            ePath == SvtPathOptions::PATH_STORAGE
           )
         {
             // These office paths have to be converted to system pates
@@ -274,6 +278,7 @@ void SvtPathOptions_Impl::SetPath( SvtPathOptions::Paths ePath, const OUString&
             case SvtPathOptions::PATH_HELP:
             case SvtPathOptions::PATH_MODULE:
             case SvtPathOptions::PATH_PLUGIN:
+            case SvtPathOptions::PATH_STORAGE:
             {
                 // These office paths have to be convert back to UCB-URL's
                 osl::FileBase::getFileURLFromSystemPath( rNewPath, aResult );
@@ -545,6 +550,11 @@ const OUString& SvtPathOptions::GetPluginPath() const
     return pImpl->GetPluginPath();
 }
 
+const OUString& SvtPathOptions::GetStoragePath() const
+{
+    return pImpl->GetStoragePath();
+}
+
 const OUString& SvtPathOptions::GetTempPath() const
 {
     return pImpl->GetTempPath();
@@ -655,6 +665,11 @@ void SvtPathOptions::SetPluginPath( const OUString& rPath )
     pImpl->SetPluginPath( rPath );
 }
 
+void SvtPathOptions::SetStoragePath( const OUString& rPath )
+{
+    pImpl->SetStoragePath( rPath );
+}
+
 void SvtPathOptions::SetTempPath( const OUString& rPath )
 {
     pImpl->SetTempPath( rPath );
@@ -753,6 +768,7 @@ bool SvtPathOptions::SearchFile( OUString& rIniFile, Paths ePath )
                 case PATH_MODULE:       aPath = GetModulePath();        break;
                 case PATH_PALETTE:      aPath = GetPalettePath();       break;
                 case PATH_PLUGIN:       aPath = GetPluginPath();        break;
+                case PATH_STORAGE:      aPath = GetStoragePath();       break;
                 case PATH_TEMP:         aPath = GetTempPath();          break;
                 case PATH_TEMPLATE:     aPath = GetTemplatePath();      break;
                 case PATH_WORK:         aPath = GetWorkPath();          break;


More information about the Libreoffice-commits mailing list