[SCM] LibreOffice packaging repository branch, ubuntu-precise-3.5, updated. libreoffice_3.5.2_rc2-1-100-gafff94e
The following commit has been merged in the ubuntu-precise-3.5 branch:
commit 43697b28e184e688984af8b4df3f6b7461746f7d
Author: Bjoern Michaelsen <bjoern.michaelsen@canonical.com>
Date: Thu Apr 5 12:48:40 2012 +0200
remove backported upstream patch fdo-40607-osl_syncFile-having-written-and-avoid-doin.diff
diff --git a/patches/fdo-40607-osl_syncFile-having-written-and-avoid-doin.diff b/patches/fdo-40607-osl_syncFile-having-written-and-avoid-doin.diff
deleted file mode 100644
index 7d4ab37..0000000
--- a/patches/fdo-40607-osl_syncFile-having-written-and-avoid-doin.diff
+++ /dev/null
@@ -1,173 +0,0 @@
-From c6e22c0fc0cc4ce1508f8401c4b0c14fc89df942 Mon Sep 17 00:00:00 2001
-From: Michael Meeks <michael.meeks@suse.com>
-Date: Mon, 19 Mar 2012 16:31:36 +0100
-Subject: [PATCH] fdo#40607 - osl_syncFile having written, and avoid doing
- that on start
-
-Combinded cherry-pick of master d3192948fe968fc4d6a8ec0e6fda232f265b3c4c
-plus subsequent fixes bee742eb7a0d5dfe23e61d9ee49a29286de90256 "Fix sense
-of r/o detection code, and clean up" and
-61eeb689d7605a23c3e71c652b57ee65cf5b28dc "fix smoketest - need to check
-read-only-ness of non-existent paths."
-
-Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
----
- desktop/source/deployment/manager/dp_manager.cxx | 84 +++++++++++----------
- ucb/source/ucp/file/shell.cxx | 4 +
- 2 files changed, 48 insertions(+), 40 deletions(-)
-
-diff --git a/desktop/source/deployment/manager/dp_manager.cxx b/desktop/source/deployment/manager/dp_manager.cxx
-index 508d6bb..19117ab 100644
---- a/desktop/source/deployment/manager/dp_manager.cxx
-+++ b/desktop/source/deployment/manager/dp_manager.cxx
-@@ -32,6 +32,7 @@
- #include "dp_platform.hxx"
- #include "dp_manager.h"
- #include "dp_identifier.hxx"
-+#include "rtl/oustringostreaminserter.hxx"
- #include "rtl/ustrbuf.hxx"
- #include "rtl/string.hxx"
- #include "rtl/uri.hxx"
-@@ -312,6 +313,42 @@ void PackageManagerImpl::initRegistryBackends()
- m_xComponentContext ) );
- }
-
-+// this overcomes previous rumours that the sal API is misleading
-+// as to whether a directory is truly read-only or not
-+static bool isMacroURLReadOnly( const OUString &rMacro )
-+{
-+ rtl::OUString aDirURL( rMacro );
-+ ::rtl::Bootstrap::expandMacros( aDirURL );
-+
-+ ::osl::FileBase::RC aErr = ::osl::Directory::create( aDirURL );
-+ if ( aErr == ::osl::FileBase::E_None )
-+ return false; // it will be writeable
-+ if ( aErr != ::osl::FileBase::E_EXIST )
-+ return true; // some serious problem creating it
-+
-+ bool bError;
-+ sal_uInt64 nWritten = 0;
-+ rtl::OUString aFileURL(
-+ aDirURL + rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/stamp.sys")) );
-+ ::osl::File aFile( aFileURL );
-+
-+ bError = aFile.open( osl_File_OpenFlag_Read |
-+ osl_File_OpenFlag_Write |
-+ osl_File_OpenFlag_Create ) != ::osl::FileBase::E_None;
-+ if (!bError)
-+ bError = aFile.write( "1", 1, nWritten ) != ::osl::FileBase::E_None;
-+ if (aFile.close() != ::osl::FileBase::E_None)
-+ bError = true;
-+ if (osl::File::remove( aFileURL ) != ::osl::FileBase::E_None)
-+ bError = true;
-+
-+ SAL_INFO(
-+ "desktop.deployment",
-+ "local url '" << rMacro << "' -> '" << aFileURL << "' "
-+ << (bError ? "is" : "is not") << " readonly\n");
-+ return bError;
-+}
-+
- //______________________________________________________________________________
- Reference<deployment::XPackageManager> PackageManagerImpl::create(
- Reference<XComponentContext> const & xComponentContext,
-@@ -321,7 +358,7 @@ Reference<deployment::XPackageManager> PackageManagerImpl::create(
- xComponentContext, context );
- Reference<deployment::XPackageManager> xPackageManager( that );
-
-- OUString packages, logFile, stampURL;
-+ OUString packages, logFile, stamp;
- if (context.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("user") )) {
- that->m_activePackages = OUSTR(
- "vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE/uno_packages");
-@@ -342,8 +379,7 @@ Reference<deployment::XPackageManager> PackageManagerImpl::create(
- //using virtualization it appears that he/she can. Then a shared extension can
- //be installed but is only visible for the user (because the extension is in
- //the virtual store).
-- stampURL = OUSTR(
-- "vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE/stamp.sys");
-+ stamp = OUSTR("$UNO_USER_PACKAGES_CACHE");
- }
- else if (context.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("shared") )) {
- that->m_activePackages = OUSTR(
-@@ -354,8 +390,7 @@ Reference<deployment::XPackageManager> PackageManagerImpl::create(
- "vnd.sun.star.expand:$SHARED_EXTENSIONS_USER/registry");
- logFile = OUSTR(
- "vnd.sun.star.expand:$SHARED_EXTENSIONS_USER/log.txt");
-- stampURL = OUSTR(
-- "vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE/stamp.sys");
-+ stamp = OUSTR("$UNO_SHARED_PACKAGES_CACHE");
- }
- else if (context.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("bundled") )) {
- that->m_activePackages = OUSTR(
-@@ -394,8 +429,7 @@ Reference<deployment::XPackageManager> PackageManagerImpl::create(
- "vnd.sun.star.expand:$TMP_EXTENSIONS");
- that->m_registryCache = OUSTR(
- "vnd.sun.star.expand:$TMP_EXTENSIONS/registry");
-- stampURL = OUSTR(
-- "vnd.sun.star.expand:$TMP_EXTENSIONS/stamp.sys");
-+ stamp = OUSTR("$TMP_EXTENSIONS");
- }
- else if (! context.matchAsciiL(
- RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.tdoc:/") )) {
-@@ -407,39 +441,9 @@ Reference<deployment::XPackageManager> PackageManagerImpl::create(
- Reference<XCommandEnvironment> xCmdEnv;
-
- try {
-- //There is no stampURL for the bundled folder
-- if (stampURL.getLength() > 0)
-- {
--#define CURRENT_STAMP "1"
-- try {
-- //The osl file API does not allow to find out if one can write
-- //into a folder. Therefore we try to write a file. Then we delete
-- //it, so that it does not hinder uninstallation of OOo
-- // probe writing:
-- ::ucbhelper::Content ucbStamp( stampURL, xCmdEnv );
-- ::rtl::OString stamp(
-- RTL_CONSTASCII_STRINGPARAM(CURRENT_STAMP) );
-- Reference<io::XInputStream> xData(
-- ::xmlscript::createInputStream(
-- ::rtl::ByteSequence(
-- reinterpret_cast<sal_Int8 const *>(stamp.getStr()),
-- stamp.getLength() ) ) );
-- ucbStamp.writeStream( xData, true /* replace existing */ );
-- that->m_readOnly = false;
-- erase_path( stampURL, xCmdEnv );
-- }
-- catch (const RuntimeException &) {
-- try {
-- erase_path( stampURL, xCmdEnv );
-- } catch (...)
-- {
-- }
-- throw;
-- }
-- catch (const Exception &) {
-- that->m_readOnly = true;
-- }
-- }
-+ // There is no stamp for the bundled folder:
-+ if (!stamp.isEmpty())
-+ that->m_readOnly = isMacroURLReadOnly( stamp );
-
- if (!that->m_readOnly && logFile.getLength() > 0)
- {
-diff --git a/ucb/source/ucp/file/shell.cxx b/ucb/source/ucp/file/shell.cxx
-index fcc238b..1cd1505 100644
---- a/ucb/source/ucp/file/shell.cxx
-+++ b/ucb/source/ucp/file/shell.cxx
-@@ -1913,6 +1913,10 @@ shell::write( sal_Int32 CommandId,
- }
- } while( nReadBytes == nRequestedBytes );
-
-+ aFile.sync(); // fsync / flush it to disk.
-+ OSL_TRACE( "fsync'd file '%s'\n",
-+ rtl::OUStringToOString( aUnqPath, RTL_TEXTENCODING_UTF8 ).getStr() );
-+
- err = aFile.close();
- if( err != osl::FileBase::E_None )
- {
---
-1.7.9.1
-
diff --git a/patches/series b/patches/series
index 3bd0dcb..0d115ba 100644
--- a/patches/series
+++ b/patches/series
@@ -33,6 +33,5 @@ debian-hardened-buildflags.diff
gtk3-hack-explicit-gmodule.diff
pkgconfig-mozilla-plugin.diff
ubuntu-quicklists.diff
-fdo-40607-osl_syncFile-having-written-and-avoid-doin.diff
fdo-43895-lp-905355-Never-let-users-save-in-tmp-by-d.diff
bypass-GtkSalPrinter-when-it-is-not-enabled.diff
--
LibreOffice packaging repository
Reply to: