[libreoffice/master-3.5] fix patches
David Tardon
dtardon at fedoraproject.org
Thu Dec 1 14:46:01 UTC 2011
commit d8184f24d39d84cef6ec1d624ec2ca2728e4ea68
Author: David Tardon <dtardon at redhat.com>
Date: Thu Dec 1 15:04:23 2011 +0100
fix patches
libreoffice.spec | 8 +-
...e.org-3.1.0.ooo101274.opening-a-directory.patch | 67 ++++++++++++--------
...rg-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch | 58 +++++++++++-------
3 files changed, 80 insertions(+), 53 deletions(-)
---
diff --git a/libreoffice.spec b/libreoffice.spec
index 382965c..b5b62b5 100644
--- a/libreoffice.spec
+++ b/libreoffice.spec
@@ -106,7 +106,8 @@ Patch10: 0001-wpsimport-writerperfect.diff-WPS-Import-filter-core-.patch
Patch11: libreoffice-gcj.patch
Patch12: libreoffice-rhel6poppler.patch
%endif
-Patch13: solenv.fix.mk.inheritance.patch
+# TODO: this in S390 only, so it can wait .-)
+#Patch13: solenv.fix.mk.inheritance.patch
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%define instdir %{_libdir}
@@ -750,12 +751,11 @@ for a in */*; do mv `pwd`/$a .; done
tail -n 1 extras/source/palettes/standard.soc) > redhat.soc
mv -f redhat.soc extras/source/palettes/standard.soc
%patch1 -p1
-# TODO: fix patches
%patch2 -p1 -b .ooo86080.unopkg.bodge.patch
%patch3 -p1 -b .ooo88341.sc.verticalboxes.patch
%patch4 -p1 -b .oooXXXXX.solenv.allowmissing.patch
-#%patch5 -p0 -b .ooo101274.opening-a-directory.patch
-#%patch6 -p0 -b .ooo105784.vcl.sniffscriptforsubs.patch
+%patch5 -p1 -b .ooo101274.opening-a-directory.patch
+%patch6 -p1 -b .ooo105784.vcl.sniffscriptforsubs.patch
%patch7 -p1 -b .libreoffice-installfix.patch
%if 0%{?rhel}
%patch8 -p1 -b .libwpd08-1.patch
diff --git a/openoffice.org-3.1.0.ooo101274.opening-a-directory.patch b/openoffice.org-3.1.0.ooo101274.opening-a-directory.patch
index 8475362..2b13e4f 100644
--- a/openoffice.org-3.1.0.ooo101274.opening-a-directory.patch
+++ b/openoffice.org-3.1.0.ooo101274.opening-a-directory.patch
@@ -1,8 +1,30 @@
-Index: ucbhelper/source/client/content.cxx
-===================================================================
---- ucbhelper/source/client/content.cxx (revision 270567)
-+++ ucbhelper/source/client/content.cxx (working copy)
-@@ -39,6 +39,7 @@
+From 7e3bdb601c02e60b772e64ec9d11c56881c9a643 Mon Sep 17 00:00:00 2001
+From: David Tardon <dtardon at redhat.com>
+Date: Thu, 1 Dec 2011 14:02:07 +0100
+Subject: [PATCH 1/2] #i101274 a directory on command line is silently ignored
+
+---
+ .../source/misc/stillreadwriteinteraction.cxx | 1 +
+ ucbhelper/source/client/content.cxx | 75 ++++++++++++++++++++
+ 2 files changed, 76 insertions(+), 0 deletions(-)
+
+diff --git a/comphelper/source/misc/stillreadwriteinteraction.cxx b/comphelper/source/misc/stillreadwriteinteraction.cxx
+index 124564d..506f31c 100644
+--- a/comphelper/source/misc/stillreadwriteinteraction.cxx
++++ b/comphelper/source/misc/stillreadwriteinteraction.cxx
+@@ -96,6 +96,7 @@ ucbhelper::InterceptedInteraction::EInterceptionState StillReadWriteInteraction:
+ bAbort = (
+ (exIO.Code == css::ucb::IOErrorCode_ACCESS_DENIED )
+ || (exIO.Code == css::ucb::IOErrorCode_LOCKING_VIOLATION )
++ || (exIO.Code == css::ucb::IOErrorCode_NO_FILE )
+ || (exIO.Code == css::ucb::IOErrorCode_NOT_EXISTING )
+ #ifdef MACOSX
+ // this is a workaround for MAC, on this platform if the file is locked
+diff --git a/ucbhelper/source/client/content.cxx b/ucbhelper/source/client/content.cxx
+index 676acd5..4a599c9 100644
+--- a/ucbhelper/source/client/content.cxx
++++ b/ucbhelper/source/client/content.cxx
+@@ -38,6 +38,7 @@
#include <cppuhelper/weak.hxx>
#include <cppuhelper/implbase1.hxx>
@@ -10,7 +32,7 @@ Index: ucbhelper/source/client/content.cxx
#include <com/sun/star/ucb/ContentCreationError.hpp>
#include <com/sun/star/ucb/XCommandEnvironment.hpp>
#include <com/sun/star/ucb/XCommandInfo.hpp>
-@@ -48,6 +49,8 @@
+@@ -47,6 +48,8 @@
#include <com/sun/star/ucb/ContentAction.hpp>
#include <com/sun/star/ucb/OpenCommandArgument2.hpp>
#include <com/sun/star/ucb/InsertCommandArgument.hpp>
@@ -19,7 +41,7 @@ Index: ucbhelper/source/client/content.cxx
#include <com/sun/star/ucb/GlobalTransferCommandArgument.hpp>
#include <com/sun/star/ucb/NameClash.hpp>
#include <com/sun/star/ucb/OpenMode.hpp>
-@@ -65,6 +68,8 @@
+@@ -64,6 +67,8 @@
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/lang/IllegalArgumentException.hpp>
#include <com/sun/star/beans/UnknownPropertyException.hpp>
@@ -28,7 +50,7 @@ Index: ucbhelper/source/client/content.cxx
#include <ucbhelper/macros.hxx>
#include <ucbhelper/content.hxx>
#include <ucbhelper/contentbroker.hxx>
-@@ -72,6 +77,10 @@
+@@ -71,6 +76,10 @@
#include <ucbhelper/activedatastreamer.hxx>
#include <ucbhelper/interactionrequest.hxx>
#include <ucbhelper/cancelcommandexecution.hxx>
@@ -39,7 +61,7 @@ Index: ucbhelper/source/client/content.cxx
using namespace com::sun::star::container;
using namespace com::sun::star::beans;
-@@ -375,6 +384,54 @@
+@@ -373,6 +382,54 @@ static Reference< XContent > getContent(
return Reference< XContent >();
}
@@ -94,7 +116,7 @@ Index: ucbhelper/source/client/content.cxx
//=========================================================================
//=========================================================================
//
-@@ -1186,7 +1243,10 @@
+@@ -890,7 +947,10 @@ Reference< XInputStream > Content::openStream()
throw( CommandAbortedException, RuntimeException, Exception )
{
if ( !isDocument() )
@@ -105,7 +127,7 @@ Index: ucbhelper/source/client/content.cxx
Reference< XActiveDataSink > xSink = new ActiveDataSink;
-@@ -1211,7 +1271,10 @@
+@@ -915,7 +975,10 @@ Reference< XInputStream > Content::openStreamNoLock()
throw( CommandAbortedException, RuntimeException, Exception )
{
if ( !isDocument() )
@@ -116,7 +138,7 @@ Index: ucbhelper/source/client/content.cxx
Reference< XActiveDataSink > xSink = new ActiveDataSink;
-@@ -1236,7 +1299,10 @@
+@@ -940,7 +1003,10 @@ Reference< XStream > Content::openWriteableStream()
throw( CommandAbortedException, RuntimeException, Exception )
{
if ( !isDocument() )
@@ -127,7 +149,7 @@ Index: ucbhelper/source/client/content.cxx
Reference< XActiveDataStreamer > xStreamer = new ActiveDataStreamer;
-@@ -1261,7 +1327,10 @@
+@@ -965,7 +1031,10 @@ Reference< XStream > Content::openWriteableStreamNoLock()
throw( CommandAbortedException, RuntimeException, Exception )
{
if ( !isDocument() )
@@ -138,7 +160,7 @@ Index: ucbhelper/source/client/content.cxx
Reference< XActiveDataStreamer > xStreamer = new ActiveDataStreamer;
-@@ -1286,7 +1355,10 @@
+@@ -990,7 +1059,10 @@ sal_Bool Content::openStream( const Reference< XActiveDataSink >& rSink )
throw( CommandAbortedException, RuntimeException, Exception )
{
if ( !isDocument() )
@@ -149,7 +171,7 @@ Index: ucbhelper/source/client/content.cxx
OpenCommandArgument2 aArg;
aArg.Mode = OpenMode::DOCUMENT;
-@@ -1309,7 +1381,10 @@
+@@ -1013,7 +1085,10 @@ sal_Bool Content::openStream( const Reference< XOutputStream >& rStream )
throw( CommandAbortedException, RuntimeException, Exception )
{
if ( !isDocument() )
@@ -160,15 +182,6 @@ Index: ucbhelper/source/client/content.cxx
OpenCommandArgument2 aArg;
aArg.Mode = OpenMode::DOCUMENT;
-Index: comphelper/source/misc/mediadescriptor.cxx
-===================================================================
---- comphelper/source/misc/stillreadwriteinteraction.cxx 2010-07-06 15:32:02.000000000 +0100
-+++ comphelper/source/misc/stillreadwriteinteraction.cxx 2010-07-06 15:32:31.000000000 +0100
-@@ -103,6 +103,7 @@
- bAbort = (
- (exIO.Code == css::ucb::IOErrorCode_ACCESS_DENIED )
- || (exIO.Code == css::ucb::IOErrorCode_LOCKING_VIOLATION )
-+ || (exIO.Code == css::ucb::IOErrorCode_NO_FILE )
- || (exIO.Code == css::ucb::IOErrorCode_NOT_EXISTING )
- #ifdef MACOSX
- // this is a workaround for MAC, on this platform if the file is locked
+--
+1.7.7.3
+
diff --git a/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch b/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
index d66c4e7..38b521c 100644
--- a/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
+++ b/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
@@ -1,7 +1,18 @@
-diff -ru vcl.orig/unx/source/fontmanager/fontconfig.cxx vcl/unx/source/fontmanager/fontconfig.cxx
---- vcl.orig/unx/source/fontmanager/fontconfig.cxx 2009-10-08 13:25:00.000000000 +0100
-+++ vcl/generic/fontmanager/fontconfig.cxx 2009-10-08 13:51:51.000000000 +0100
-@@ -92,6 +92,9 @@
+From 36644331aad8382ccab7fb19d7ab3339bbff0c20 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm at redhat.com>
+Date: Thu, 1 Dec 2011 14:18:09 +0100
+Subject: [PATCH 2/2] #i105784# vcl: improve selection of fallback font by
+ supplying language hint when none exists
+
+---
+ vcl/generic/fontmanager/fontconfig.cxx | 143 +++++++++++++++++++++++++++++++-
+ 1 files changed, 141 insertions(+), 2 deletions(-)
+
+diff --git a/vcl/generic/fontmanager/fontconfig.cxx b/vcl/generic/fontmanager/fontconfig.cxx
+index 4d02a76..ecd3b5d 100644
+--- a/vcl/generic/fontmanager/fontconfig.cxx
++++ b/vcl/generic/fontmanager/fontconfig.cxx
+@@ -89,6 +89,9 @@ using namespace psp;
#include "sal/alloca.h"
@@ -11,7 +22,7 @@ diff -ru vcl.orig/unx/source/fontmanager/fontconfig.cxx vcl/unx/source/fontmanag
#include <utility>
#include <algorithm>
-@@ -1108,6 +1111,138 @@
+@@ -747,6 +750,138 @@ static void addtopattern(FcPattern *pPattern,
}
}
@@ -147,39 +158,42 @@ diff -ru vcl.orig/unx/source/fontmanager/fontconfig.cxx vcl/unx/source/fontmanag
+ return NULL;
+}
+
- rtl::OUString PrintFontManager::Substitute(const rtl::OUString& rFontName,
- rtl::OUString& rMissingCodes, const rtl::OString &rLangAttrib,
- italic::type &rItalic, weight::type &rWeight,
-@@ -1128,14 +1263,13 @@
- const FcChar8* pTargetNameUtf8 = (FcChar8*)aTargetName.getStr();
- rWrapper.FcPatternAddString( pPattern, FC_FAMILY, pTargetNameUtf8 );
+ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, rtl::OUString& rMissingCodes ) const
+ {
+ bool bRet = false;
+@@ -764,14 +899,13 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, rtl::OUString& r
+ FcPatternAddString(pPattern, FC_FAMILY, pTargetNameUtf8);
+ const rtl::OString aLangAttrib = MsLangId::convertLanguageToIsoByteString(rPattern.meLanguage);
+ const FcChar8* pLangAttribUtf8 = NULL;
- if( rLangAttrib.getLength() )
+ if( aLangAttrib.getLength() )
{
- const FcChar8* pLangAttribUtf8;
- if (rLangAttrib.equalsIgnoreAsciiCase(OString(RTL_CONSTASCII_STRINGPARAM("pa-in"))))
+ if (aLangAttrib.equalsIgnoreAsciiCase(OString(RTL_CONSTASCII_STRINGPARAM("pa-in"))))
pLangAttribUtf8 = (FcChar8*)"pa";
else
- pLangAttribUtf8 = (FcChar8*)rLangAttrib.getStr();
-- rWrapper.FcPatternAddString( pPattern, FC_LANG, pLangAttribUtf8 );
+ pLangAttribUtf8 = (FcChar8*)aLangAttrib.getStr();
+- FcPatternAddString(pPattern, FC_LANG, pLangAttribUtf8);
}
// Add required Unicode characters, if any
-@@ -1147,11 +1281,16 @@
+@@ -783,11 +917,16 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, rtl::OUString& r
// also handle unicode surrogates
const sal_uInt32 nCode = rMissingCodes.iterateCodePoints( &nStrIndex );
- rWrapper.FcCharSetAddChar( unicodes, nCode );
+ FcCharSetAddChar( unicodes, nCode );
+ if (!pLangAttribUtf8)
+ pLangAttribUtf8 = (const FcChar8*)pick_sample_language(nCode);
}
- rWrapper.FcPatternAddCharSet( pPattern, FC_CHARSET, unicodes);
- rWrapper.FcCharSetDestroy( unicodes );
+ FcPatternAddCharSet(pPattern, FC_CHARSET, unicodes);
+ FcCharSetDestroy(unicodes);
}
+ if( pLangAttribUtf8 )
-+ rWrapper.FcPatternAddString( pPattern, FC_LANG, pLangAttribUtf8 );
++ FcPatternAddString( pPattern, FC_LANG, pLangAttribUtf8 );
+
- addtopattern(rWrapper, pPattern, rItalic, rWeight, rWidth, rPitch);
+ addtopattern(pPattern, rPattern.meItalic, rPattern.meWeight,
+ rPattern.meWidthType, rPattern.mePitch);
- // query fontconfig for a substitute
+--
+1.7.7.3
+
More information about the scm-commits
mailing list