[Libreoffice-commits] core.git: Branch 'libreoffice-5-1' - 2 commits - external/liborcus include/vcl vcl/inc vcl/source vcl/unx

Caolán McNamara caolanm at redhat.com
Wed Dec 2 06:44:22 PST 2015


 external/liborcus/UnpackedTarball_liborcus.mk |    1 +
 external/liborcus/unusedheader.patch.0        |   11 +++++++++++
 include/vcl/settings.hxx                      |    3 ---
 vcl/inc/salinst.hxx                           |    4 ++++
 vcl/inc/unx/gtk/gtkinst.hxx                   |    2 ++
 vcl/source/app/settings.cxx                   |   16 ----------------
 vcl/unx/generic/gdi/cairotextrender.cxx       |   12 ++++++------
 vcl/unx/gtk/gtkinst.cxx                       |    5 +++++
 vcl/unx/gtk/salnativewidgets-gtk.cxx          |    4 ----
 vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx     |    3 ---
 10 files changed, 29 insertions(+), 32 deletions(-)

New commits:
commit 7587f8bab881303f77864dae03999048e43c642f
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Dec 2 14:41:11 2015 +0000

    unnecessary include brings in boost headers that are broken under rhel-7
    
    Change-Id: I1ad477b9db9ba960ae2c417799e5d91b63538d57
    (cherry picked from commit 12fc5b85ddc3b90b385ad0fc2ab0144a32bf9a4b)

diff --git a/external/liborcus/UnpackedTarball_liborcus.mk b/external/liborcus/UnpackedTarball_liborcus.mk
index f278049..825fa49 100644
--- a/external/liborcus/UnpackedTarball_liborcus.mk
+++ b/external/liborcus/UnpackedTarball_liborcus.mk
@@ -17,6 +17,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,liborcus,\
 	external/liborcus/0001-workaround-a-linking-problem-on-windows.patch \
 	external/liborcus/rpath.patch.0 \
 	external/liborcus/fix-crash-ooo55043-1.patch.0 \
+	external/liborcus/unusedheader.patch.0 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/liborcus/unusedheader.patch.0 b/external/liborcus/unusedheader.patch.0
new file mode 100644
index 0000000..4f7a77b
--- /dev/null
+++ b/external/liborcus/unusedheader.patch.0
@@ -0,0 +1,11 @@
+--- ./src/parser/pstring.cpp.orig	2015-12-02 14:38:44.658744408 +0000
++++ ./src/parser/pstring.cpp	2015-12-02 14:38:50.449658497 +0000
+@@ -13,8 +13,6 @@
+ #include <iostream>
+ #include <vector>
+ 
+-#include <boost/thread/mutex.hpp>
+-
+ using namespace std;
+ 
+ namespace orcus {
commit 17f6ebef2f3edbb7876524118dfe633025dc289b
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue Dec 1 20:35:28 2015 +0000

    valgrind: scary warning that the cairo font options were deleted before use
    
    Change-Id: I58427aafb30eca64a67bcf7dd9a7738d8da3e085
    (cherry picked from commit 3520b0f82aa2146958fbc1bda1cf7e9b5beb9a5d)

diff --git a/include/vcl/settings.hxx b/include/vcl/settings.hxx
index c08fe15..46de94d 100644
--- a/include/vcl/settings.hxx
+++ b/include/vcl/settings.hxx
@@ -445,9 +445,6 @@ public:
     void                            SetPrimaryButtonWarpsSlider( bool bPrimaryButtonWarpsSlider );
     bool                            GetPrimaryButtonWarpsSlider() const;
 
-    void                            SetCairoFontOptions( const void *pOptions );
-    const void*                     GetCairoFontOptions() const;
-
     void                            SetAppFont( const vcl::Font& rFont );
     const vcl::Font&                GetAppFont() const;
 
diff --git a/vcl/inc/salinst.hxx b/vcl/inc/salinst.hxx
index b20448f..033e739 100644
--- a/vcl/inc/salinst.hxx
+++ b/vcl/inc/salinst.hxx
@@ -62,6 +62,8 @@ enum class SalFrameStyleFlags;
 
 enum SalYieldResult { EVENT, TIMEOUT };
 
+typedef struct _cairo_font_options cairo_font_options_t;
+
 class VCL_PLUGIN_PUBLIC SalInstance
 {
 private:
@@ -178,6 +180,8 @@ public:
 
     /// get information about underlying versions
     virtual OUString        getOSVersion() { return OUString("-"); }
+
+    virtual const cairo_font_options_t* GetCairoFontOptions() { return nullptr; }
 };
 
 // called from SVMain
diff --git a/vcl/inc/unx/gtk/gtkinst.hxx b/vcl/inc/unx/gtk/gtkinst.hxx
index 002b654..a7c489b 100644
--- a/vcl/inc/unx/gtk/gtkinst.hxx
+++ b/vcl/inc/unx/gtk/gtkinst.hxx
@@ -96,6 +96,8 @@ public:
     virtual css::uno::Reference< css::uno::XInterface > CreateClipboard( const css::uno::Sequence< css::uno::Any >& i_rArguments ) override;
 #endif
 
+    virtual const cairo_font_options_t* GetCairoFontOptions() override;
+
     void                        RemoveTimer (SalTimer *pTimer);
 
     std::shared_ptr<vcl::unx::GtkPrintWrapper> getPrintWrapper() const;
diff --git a/vcl/source/app/settings.cxx b/vcl/source/app/settings.cxx
index e910a92..70a56a3 100644
--- a/vcl/source/app/settings.cxx
+++ b/vcl/source/app/settings.cxx
@@ -194,7 +194,6 @@ struct ImplStyleData
     bool                            mbPrimaryButtonWarpsSlider;
     DialogStyle                     maDialogStyle;
     FrameStyle                      maFrameStyle;
-    const void*                     mpFontOptions;
 
     sal_uInt16                      mnEdgeBlending;
     Color                           maEdgeBlendingTopLeftColor;
@@ -549,7 +548,6 @@ ImplStyleData::ImplStyleData() :
     mbAutoMnemonic              = true;
     mnToolbarIconSize           = ToolbarIconSize::Unknown;
     meUseImagesInMenus          = TRISTATE_INDET;
-    mpFontOptions              = nullptr;
     mnEdgeBlending = 35;
     maEdgeBlendingTopLeftColor = RGB_COLORDATA(0xC0, 0xC0, 0xC0);
     maEdgeBlendingBottomRightColor = RGB_COLORDATA(0x40, 0x40, 0x40);
@@ -670,7 +668,6 @@ ImplStyleData::ImplStyleData( const ImplStyleData& rData ) :
     mnToolbarIconSize           = rData.mnToolbarIconSize;
     mIconThemeScanner.reset(new vcl::IconThemeScanner(*rData.mIconThemeScanner));
     mIconThemeSelector.reset(new vcl::IconThemeSelector(*rData.mIconThemeSelector));
-    mpFontOptions               = rData.mpFontOptions;
     mnEdgeBlending              = rData.mnEdgeBlending;
     maEdgeBlendingTopLeftColor  = rData.maEdgeBlendingTopLeftColor;
     maEdgeBlendingBottomRightColor = rData.maEdgeBlendingBottomRightColor;
@@ -1546,19 +1543,6 @@ StyleSettings::GetPrimaryButtonWarpsSlider() const
 }
 
 void
-StyleSettings::SetCairoFontOptions( const void *pOptions )
-{
-    CopyData();
-    mxData->mpFontOptions = pOptions;
-}
-
-const void*
-StyleSettings::GetCairoFontOptions() const
-{
-    return mxData->mpFontOptions;
-}
-
-void
 StyleSettings::SetAppFont( const vcl::Font& rFont )
 {
     CopyData();
diff --git a/vcl/unx/generic/gdi/cairotextrender.cxx b/vcl/unx/generic/gdi/cairotextrender.cxx
index a78e56d..38462a1 100644
--- a/vcl/unx/generic/gdi/cairotextrender.cxx
+++ b/vcl/unx/generic/gdi/cairotextrender.cxx
@@ -212,8 +212,9 @@ void CairoTextRender::DrawServerFontLayout( const ServerFontLayout& rLayout )
         return;
     }
 
-    if (const void *pOptions = Application::GetSettings().GetStyleSettings().GetCairoFontOptions())
-        cairo_set_font_options(cr, static_cast<const cairo_font_options_t*>(pOptions));
+    ImplSVData* pSVData = ImplGetSVData();
+    if (const cairo_font_options_t* pFontOptions = pSVData->mpDefInst->GetCairoFontOptions())
+        cairo_set_font_options(cr, pFontOptions);
 
     double nDX, nDY;
     getSurfaceOffset(nDX, nDY);
@@ -429,12 +430,11 @@ void CairoTextRender::GetDevFontList( PhysicalFontCollection* pFontCollection )
 
 void cairosubcallback(void* pPattern)
 {
-    const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
-    const void* pFontOptions = rStyleSettings.GetCairoFontOptions();
+    ImplSVData* pSVData = ImplGetSVData();
+    const cairo_font_options_t* pFontOptions = pSVData->mpDefInst->GetCairoFontOptions();
     if( !pFontOptions )
         return;
-    cairo_ft_font_options_substitute(static_cast<const cairo_font_options_t*>(pFontOptions),
-        static_cast<FcPattern*>(pPattern));
+    cairo_ft_font_options_substitute(pFontOptions, static_cast<FcPattern*>(pPattern));
 }
 
 FontConfigFontOptions* GetFCFontOptions( const ImplFontAttributes& rFontAttributes, int nSize)
diff --git a/vcl/unx/gtk/gtkinst.cxx b/vcl/unx/gtk/gtkinst.cxx
index f7da84f..7ae75c4 100644
--- a/vcl/unx/gtk/gtkinst.cxx
+++ b/vcl/unx/gtk/gtkinst.cxx
@@ -468,4 +468,9 @@ GtkInstance::getPrintWrapper() const
     return m_xPrintWrapper;
 }
 
+const cairo_font_options_t* GtkInstance::GetCairoFontOptions()
+{
+    return gdk_screen_get_font_options(gdk_screen_get_default());
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/salnativewidgets-gtk.cxx b/vcl/unx/gtk/salnativewidgets-gtk.cxx
index f0bfa70..1a10453 100644
--- a/vcl/unx/gtk/salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk/salnativewidgets-gtk.cxx
@@ -3918,7 +3918,6 @@ void GtkSalGraphics::refreshFontconfig( GtkSettings *pSettings )
 
 void GtkSalGraphics::updateSettings( AllSettings& rSettings )
 {
-    GdkScreen* pScreen = gtk_widget_get_screen( m_pWindow );
     gtk_widget_ensure_style( m_pWindow );
     GtkStyle* pStyle = gtk_widget_get_style( m_pWindow );
     GtkSettings* pSettings = gtk_widget_get_settings( m_pWindow );
@@ -4244,9 +4243,6 @@ void GtkSalGraphics::updateSettings( AllSettings& rSettings )
 
     aStyleSet.SetToolbarIconSize( ToolbarIconSize::Large );
 
-    const cairo_font_options_t* pNewOptions = gdk_screen_get_font_options( pScreen );
-    aStyleSet.SetCairoFontOptions( pNewOptions );
-
     // finally update the collected settings
     rSettings.SetStyleSettings( aStyleSet );
 }
diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
index 3a991e6..e0cc8d5 100644
--- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
@@ -1450,7 +1450,6 @@ static inline ::Color getColorFromColor( const GdkColor& rCol )
 
 void GtkSalGraphics::updateSettings( AllSettings& rSettings )
 {
-    GdkScreen* pScreen = gtk_widget_get_screen( mpWindow );
     GtkStyleContext* pStyle = gtk_widget_get_style_context( mpWindow );
     GtkSettings* pSettings = gtk_widget_get_settings( mpWindow );
     StyleSettings aStyleSet = rSettings.GetStyleSettings();
@@ -1799,8 +1798,6 @@ void GtkSalGraphics::updateSettings( AllSettings& rSettings )
 
     aStyleSet.SetToolbarIconSize( ToolbarIconSize::Large );
 
-    const cairo_font_options_t* pNewOptions = gdk_screen_get_font_options(pScreen);
-    aStyleSet.SetCairoFontOptions( pNewOptions );
     // finally update the collected settings
     rSettings.SetStyleSettings( aStyleSet );
 #if OSL_DEBUG_LEVEL > 1


More information about the Libreoffice-commits mailing list