svtools/source/misc/templatefoldercache.cxx |   11 +++++++++++
 1 file changed, 11 insertions(+)

New commits:
commit ec752de623f4f7c7e297422730f193034e21f93f
Author: Stephan Bergmann <[email protected]>
Date:   Fri Mar 16 14:57:51 2012 +0100

    fdo#37593 Make sure needsUpdate compares canonicalized paths
    
    ...so that it does not erroneously always claim an update is needed, so that
    SvtDocumentTemplateDialog::UpdateHdl_Impl does not always jump back to
    OpenTemplateRoot() shortly after opening the dialog (and thus jumps away 
from
    the last remembered folder).
    
    Signed-off-by: Michael Meeks <[email protected]>

diff --git a/svtools/source/misc/templatefoldercache.cxx 
b/svtools/source/misc/templatefoldercache.cxx
index 41f0af0..d5325f4 100644
--- a/svtools/source/misc/templatefoldercache.cxx
+++ b/svtools/source/misc/templatefoldercache.cxx
@@ -695,6 +695,17 @@ namespace svt
         {
             String sTemplatePath( aDirs.GetToken( i, ';' ) );
             sTemplatePath = aPathOptions.ExpandMacros( sTemplatePath );
+
+            // Make sure excess ".." path segments (from expanding bootstrap
+            // variables in paths) are normalized in the same way they are
+            // normalized for paths read from the .templdir.cache file (where
+            // paths have gone through makeRelocatable URL on writing out and
+            // then through makeAbsoluteURL when reading back in), as otherwise
+            // equalStates() in needsUpdate() could erroneously consider
+            // m_aCurrentState and m_aPreviousState as different:
+            sTemplatePath = getOfficeInstDirs()->makeAbsoluteURL(
+                getOfficeInstDirs()->makeRelocatableURL(sTemplatePath));
+
             // create a new entry
             m_aCurrentState.push_back( new TemplateContent( INetURLObject( 
sTemplatePath ) ) );
             TemplateFolderContent::iterator aCurrentRoot = 
m_aCurrentState.end();
_______________________________________________
Libreoffice-commits mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to