officecfg/registry/data/org/openoffice/Office/Common.xcu   |    5 +++++
 officecfg/registry/schema/org/openoffice/Office/Common.xcs |   11 +++++++++++
 vcl/unx/generic/fontmanager/fontconfig.cxx                 |    9 +++++++++
 3 files changed, 25 insertions(+)

New commits:
commit f86d9d732d9b2aa711d321a8c9f4110b638560b4
Author: Samuel Mehrbrodt <[email protected]>
Date:   Thu Jul 13 09:06:53 2017 +0200

    tdf#104883 Don't call InstallFontconfigResources if it's not available
    
    We need to call it once because we have no other way to detect whether
    it's working or not.
    But if we receive an error the first time, we disable it from now on.
    
    Change-Id: I67dba8b65660ff7e05bdf2ddc18b565550901cd1
    Reviewed-on: https://gerrit.libreoffice.org/39895
    Tested-by: Jenkins <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>

diff --git a/officecfg/registry/data/org/openoffice/Office/Common.xcu 
b/officecfg/registry/data/org/openoffice/Office/Common.xcu
index e45beb406041..3469c49051f4 100644
--- a/officecfg/registry/data/org/openoffice/Office/Common.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Common.xcu
@@ -552,4 +552,9 @@
       </prop>
     </node>
   </node>
+  <node oor:name="PackageKit">
+      <prop oor:name="EnableFontInstallation" oor:type="xs:boolean">
+        <value install:module="unx">true</value>
+      </prop>
+  </node>
 </oor:component-data>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs 
b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
index 29573154da73..c0d4f00eff45 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
@@ -6719,5 +6719,16 @@
         <value>true</value>
       </prop>
     </group>
+    <group oor:name="PackageKit">
+      <info>
+        <desc>Contains settings related to PackageKit (Unix only).</desc>
+      </info>
+      <prop oor:name="EnableFontInstallation" oor:type="xs:boolean" 
oor:nillable="false">
+        <info>
+           <desc>Specifies if missing font installation should be 
triggered.</desc>
+        </info>
+        <value>true</value>
+      </prop>
+    </group>
   </component>
 </oor:component-schema>
diff --git a/vcl/unx/generic/fontmanager/fontconfig.cxx 
b/vcl/unx/generic/fontmanager/fontconfig.cxx
index dd9d17b7ad28..c85b12fd100d 100644
--- a/vcl/unx/generic/fontmanager/fontconfig.cxx
+++ b/vcl/unx/generic/fontmanager/fontconfig.cxx
@@ -31,6 +31,7 @@
 #include <rtl/strbuf.hxx>
 #include <unicode/uchar.h>
 #include <unicode/uscript.h>
+#include <officecfg/Office/Common.hxx>
 
 using namespace psp;
 
@@ -901,6 +902,9 @@ namespace
 #if ENABLE_DBUS
 IMPL_LINK_NOARG(PrintFontManager, autoInstallFontLangSupport, Timer *, void)
 {
+    if (!officecfg::Office::Common::PackageKit::EnableFontInstallation::get())
+        return;
+
     guint xid = get_xid_for_dbus();
 
     if (!xid)
@@ -945,6 +949,11 @@ IMPL_LINK_NOARG(PrintFontManager, 
autoInstallFontLangSupport, Timer *, void)
     /* check the error value */
     if (error != nullptr)
     {
+        // Disable this method from now on. It's simply not available on some 
systems
+        // and leads to an error dialog being shown each tim theis is called 
tdf#104883
+        std::shared_ptr<comphelper::ConfigurationChanges> batch( 
comphelper::ConfigurationChanges::create() );
+        
officecfg::Office::Common::PackageKit::EnableFontInstallation::set(false, 
batch);
+        batch->commit();
         g_debug("InstallFontconfigResources problem : %s", error->message);
         g_error_free(error);
     }
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to