sfx2/source/doc/docfile.cxx |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

New commits:
commit 8f575690ef7e8861cba01fada2166ca31424ebc5
Author:     Tor Lillqvist <[email protected]>
AuthorDate: Wed Nov 21 13:54:28 2018 +0200
Commit:     Tor Lillqvist <[email protected]>
CommitDate: Sat Nov 24 10:07:16 2018 +0100

    Don't create temp file in save destination folder when sandboxed
    
    In a sandboxed environment we don't want to attempt to create
    temporary files in the same directory where the user has selected an
    output file to be stored. The sandboxed process has permission only to
    create the specifically named output file that the user chose in the
    system file dialog in that directory.
    
    Change-Id: I65274b4c433bd66b436429bea4b287a0505b72c9
    (cherry picked from commit 54c2e3c83ab08ebe6179561e057e5189a842a631)
    Reviewed-on: https://gerrit.libreoffice.org/63918
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <[email protected]>

diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx
index 61e92a3e0d5f..144fe50aa64c 100644
--- a/sfx2/source/doc/docfile.cxx
+++ b/sfx2/source/doc/docfile.cxx
@@ -1,4 +1,4 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; 
fill-column: 100 -*- */
 /*
  * This file is part of the LibreOffice project.
  *
@@ -3506,6 +3506,11 @@ OUString GetLogicBase(std::unique_ptr<SfxMedium_Impl> 
const & pImpl)
 {
     OUString aLogicBase;
 
+// In a sandboxed environment we don't want to attempt to create temporary 
files in the same
+// directory where the user has selected an output file to be stored. The 
sandboxed process has
+// permission only to create the specifically named output file in that 
directory.
+#if !HAVE_FEATURE_MACOSX_SANDBOX
+
     if (comphelper::isFileUrl(pImpl->m_aLogicName) && !pImpl->m_pInStream)
     {
         // Try to create the temp file in the same directory when storing.
@@ -3521,6 +3526,8 @@ OUString GetLogicBase(std::unique_ptr<SfxMedium_Impl> 
const & pImpl)
         // Embedded objects would mean a special base, ignore that.
         aLogicBase.clear();
 
+#endif // !HAVE_FEATURE_MACOSX_SANDBOX
+
     return aLogicBase;
 }
 }
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to