svx/Library_svxcore.mk | 12 ++++++++++++ svx/source/gallery2/gallery1.cxx | 20 +++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-)
New commits: commit b15760a4ae63a4087c3832a99db85d45dd9c3fbf Author: Tor Lillqvist <t...@collabora.com> Date: Wed Oct 8 11:28:00 2014 +0300 Don't try to create cdefghij.klm inside the app bundle on OS X when sandboxed Actually, we check HAVE_FEATURE_READONLY_INSTALLSET and not HAVE_FEATURE_MACOSX_SANDBOX, but in practice we set the former only for the latter case. We could do this test cross-platform but I didn't bother now. Nobody uses --enable-readonly-installset when building for Linux or Windows anyway, I think. (There must be more places where we could and should check HAVE_FEATURE_READONLY_INSTALLSET.) Change-Id: Ie54f436616a1db3119b0bc0148149784127b156d (cherry picked from commit 96d091d43428472c2c68054ed5dca22f79adc705) diff --git a/svx/Library_svxcore.mk b/svx/Library_svxcore.mk index 10f7069..0415955 100644 --- a/svx/Library_svxcore.mk +++ b/svx/Library_svxcore.mk @@ -89,6 +89,18 @@ $(eval $(call gb_Library_use_externals,svxcore,\ glew \ )) +ifeq ($(OS),MACOSX) + +$(eval $(call gb_Library_add_cxxflags,svxcore,\ + $(gb_OBJCXXFLAGS) \ +)) + +$(eval $(call gb_Library_use_system_darwin_frameworks,svxcore,\ + Foundation \ +)) + +endif + $(eval $(call gb_Library_add_exception_objects,svxcore,\ svx/source/core/coreservices \ svx/source/core/extedit \ diff --git a/svx/source/gallery2/gallery1.cxx b/svx/source/gallery2/gallery1.cxx index d77122e..cd95038 100644 --- a/svx/source/gallery2/gallery1.cxx +++ b/svx/source/gallery2/gallery1.cxx @@ -17,6 +17,15 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ +#include <config_features.h> + +#if defined(MACOSX) && defined(HAVE_FEATURE_READONLY_INSTALLSET) +#define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0 +#include <premac.h> +#include <Foundation/Foundation.h> +#include <postmac.h> +#endif + #include "sal/config.h" #include <comphelper/processfactory.hxx> @@ -235,6 +244,15 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, bool& rbDirIsReadO uno::Reference< sdbc::XResultSet > xResultSet( aCnt.createCursor( aProps, ::ucbhelper::INCLUDE_DOCUMENTS_ONLY ) ); +#if defined(MACOSX) && defined(HAVE_FEATURE_READONLY_INSTALLSET) + if( rBaseURL.GetProtocol() == INET_PROT_FILE ) + { + const char *appBundle = [[[NSBundle mainBundle] bundlePath] UTF8String]; + OUString path = rBaseURL.GetURLPath(); + if( path.startsWith( OUString( appBundle, strlen( appBundle ), RTL_TEXTENCODING_UTF8 ) + "/" ) ) + rbDirIsReadOnly = true; + } +#else try { // check readonlyness the very hard way @@ -266,7 +284,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, bool& rbDirIsReadO catch( const uno::Exception& ) { } - +#endif if( xResultSet.is() ) { uno::Reference< ucb::XContentAccess > xContentAccess( xResultSet, uno::UNO_QUERY ); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits