[libreoffice] re-enable patch

David Tardon dtardon at fedoraproject.org
Fri Jul 19 09:52:24 UTC 2013


commit 2d946d767b4c2bac7eebbf2ee6553ee8ca0592a8
Author: David Tardon <dtardon at redhat.com>
Date:   Fri Jul 19 11:49:22 2013 +0200

    re-enable patch

 ...z-968892-discard-impossible-languages-for.patch |    4 +-
 libreoffice.spec                                   |    2 +-
 ...rg-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch |   56 ++++++++++++--------
 3 files changed, 36 insertions(+), 26 deletions(-)
---
diff --git a/0001-Related-rhbz-968892-discard-impossible-languages-for.patch b/0001-Related-rhbz-968892-discard-impossible-languages-for.patch
index a5754dd..809a65c 100644
--- a/0001-Related-rhbz-968892-discard-impossible-languages-for.patch
+++ b/0001-Related-rhbz-968892-discard-impossible-languages-for.patch
@@ -63,9 +63,9 @@ index 1b36980..ff471fa 100644
 +            //and autodetect something useful
 +            if (!aLangAttrib.isEmpty() && isImpossibleCodePointForLang(aLangTag, nCode))
 +                aLangAttrib = OString();
+            if (!pLangAttribUtf8)
+                pLangAttribUtf8 = (const FcChar8*)pick_sample_language(nCode);
              //#i105784#/rhbz#527719  improve selection of fallback font
-             if (aLangAttrib.isEmpty())
-             {
 -- 
 1.8.1.4
 
diff --git a/libreoffice.spec b/libreoffice.spec
index 8df7047..617670b 100644
--- a/libreoffice.spec
+++ b/libreoffice.spec
@@ -990,7 +990,7 @@ mv -f redhat.soc extras/source/palettes/standard.soc
 %patch3  -p1 -b .ooo88341.sc.verticalboxes.patch
 %patch4  -p1 -b .oooXXXXX.solenv.allowmissing.patch
 %patch5  -p1 -b .ooo101274.opening-a-directory.patch
-# %%patch6  -p1 -b .ooo105784.vcl.sniffscriptforsubs.patch
+%patch6  -p1 -b .ooo105784.vcl.sniffscriptforsubs.patch
 %patch7  -p1 -b .libreoffice-installfix.patch
 %if 0%{?rhel} && 0%{?rhel} < 7
 %patch9 -p1 -b .rhel6gcj.patch
diff --git a/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch b/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
index 4f68758..5fd93e3 100644
--- a/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
+++ b/openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
@@ -1,18 +1,18 @@
-From bda1b906c7bee734dfc7242b60b7b1510886aee0 Mon Sep 17 00:00:00 2001
+From 387b9d3293ef8582c400c670574a80ebb3aec4fd 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] #i105784# vcl: improve selection of fallback font by
  supplying language hint when none exists
 
 ---
- vcl/generic/fontmanager/fontconfig.cxx | 141 +++++++++++++++++++++++++++++++++
- 1 file changed, 141 insertions(+)
+ vcl/generic/fontmanager/fontconfig.cxx | 143 ++++++++++++++++++++++++++++++++-
+ 1 file changed, 141 insertions(+), 2 deletions(-)
 
 diff --git a/vcl/generic/fontmanager/fontconfig.cxx b/vcl/generic/fontmanager/fontconfig.cxx
-index 8270585..82ac6bc 100644
+index a305095..028b269 100644
 --- a/vcl/generic/fontmanager/fontconfig.cxx
 +++ b/vcl/generic/fontmanager/fontconfig.cxx
-@@ -91,6 +91,9 @@ using namespace psp;
+@@ -90,6 +90,9 @@ using namespace psp;
  
  #include "sal/alloca.h"
  
@@ -22,7 +22,7 @@ index 8270585..82ac6bc 100644
  #include <utility>
  #include <algorithm>
  
-@@ -911,6 +914,138 @@ IMPL_LINK_NOARG(PrintFontManager, autoInstallFontLangSupport)
+@@ -969,6 +972,138 @@ IMPL_LINK_NOARG(PrintFontManager, autoInstallFontLangSupport)
      return 0;
  }
  
@@ -158,34 +158,44 @@ index 8270585..82ac6bc 100644
 +    return NULL;
 +}
 +
- bool PrintFontManager::Substitute( FontSelectPattern &rPattern, rtl::OUString& rMissingCodes )
+ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, OUString& rMissingCodes )
  {
      bool bRet = false;
-@@ -929,6 +1064,7 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, rtl::OUString& r
+@@ -987,6 +1122,7 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, OUString& rMissi
  
-     const LanguageTag aLangTag(rPattern.meLanguage);
-     const rtl::OString aLangAttrib = mapToFontConfigLangTag(aLangTag);
+     LanguageTag aLangTag(rPattern.meLanguage);
+     OString aLangAttrib = mapToFontConfigLangTag(aLangTag);
 +    const FcChar8* pLangAttribUtf8 = (const FcChar8*)aLangAttrib.getStr();
-     if (!aLangAttrib.isEmpty())
-         FcPatternAddString(pPattern, FC_LANG, (FcChar8*)aLangAttrib.getStr());
  
-@@ -941,11 +1077,16 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, rtl::OUString& r
-            // also handle unicode surrogates
-            const sal_uInt32 nCode = rMissingCodes.iterateCodePoints( &nStrIndex );
-            FcCharSetAddChar( unicodes, nCode );
+     // Add required Unicode characters, if any
+     if ( !rMissingCodes.isEmpty() )
+@@ -997,6 +1133,8 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, OUString& rMissi
+             // also handle unicode surrogates
+             const sal_uInt32 nCode = rMissingCodes.iterateCodePoints( &nStrIndex );
+             FcCharSetAddChar( unicodes, nCode );
 +           if (!pLangAttribUtf8)
 +               pLangAttribUtf8 = (const FcChar8*)pick_sample_language(nCode);
-        }
-        FcPatternAddCharSet(pPattern, FC_CHARSET, unicodes);
-        FcCharSetDestroy(unicodes);
+             //#i105784#/rhbz#527719  improve selection of fallback font
+             if (aLangAttrib.isEmpty())
+             {
+@@ -1006,14 +1144,15 @@ bool PrintFontManager::Substitute( FontSelectPattern &rPattern, OUString& rMissi
+             {
+                 aLangTag = getExemplerLangTagForCodePoint(nCode);
+                 aLangAttrib = mapToFontConfigLangTag(aLangTag);
++                pLangAttribUtf8 = (const FcChar8*)aLangAttrib.getStr();
+             }
+         }
+         FcPatternAddCharSet(pPattern, FC_CHARSET, unicodes);
+         FcCharSetDestroy(unicodes);
      }
  
+-    if (!aLangAttrib.isEmpty())
+-        FcPatternAddString(pPattern, FC_LANG, (FcChar8*)aLangAttrib.getStr());
 +    if( pLangAttribUtf8 )
 +        FcPatternAddString( pPattern, FC_LANG, pLangAttribUtf8 );
-+
-     addtopattern(pPattern, rPattern.meItalic, rPattern.meWeight,
-         rPattern.meWidthType, rPattern.mePitch);
  
+     addtopattern(pPattern, rPattern.GetSlant(), rPattern.GetWeight(),
+         rPattern.GetWidthType(), rPattern.GetPitch());
 -- 
-1.8.0
+1.8.3.1
 


More information about the scm-commits mailing list