Hello community,

here is the log from the commit of package kmozillahelper for openSUSE:Factory 
checked in at 2019-07-21 11:33:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kmozillahelper (Old)
 and      /work/SRC/openSUSE:Factory/.kmozillahelper.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kmozillahelper"

Sun Jul 21 11:33:36 2019 rev:4 rq:716586 version:5.0.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/kmozillahelper/kmozillahelper.changes    
2018-12-10 12:29:23.130464175 +0100
+++ /work/SRC/openSUSE:Factory/.kmozillahelper.new.4126/kmozillahelper.changes  
2019-07-21 11:33:37.932784517 +0200
@@ -1,0 +2,8 @@
+Thu Jul 18 14:33:35 UTC 2019 - Fabian Vogt <[email protected]>
+
+- Update to 5.0.4:
+  * Cache helper protocols (boo#1037806)
+  * Use new style connect
+  * Don't use deprecated KRun:runUrl without flags, use with flags
+
+-------------------------------------------------------------------

Old:
----
  kmozillahelper-5.0.3.tar.gz

New:
----
  kmozillahelper-5.0.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kmozillahelper.spec ++++++
--- /var/tmp/diff_new_pack.48Hi28/_old  2019-07-21 11:33:38.428784433 +0200
+++ /var/tmp/diff_new_pack.48Hi28/_new  2019-07-21 11:33:38.432784433 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package kmozillahelper
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
 # having a hard requirement on this package
 %define helper_version 6
 Name:           kmozillahelper
-Version:        5.0.3
+Version:        5.0.4
 Release:        0
 Summary:        Helper for KDE Firefox Integration
 License:        MIT

++++++ kmozillahelper-5.0.3.tar.gz -> kmozillahelper-5.0.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kmozillahelper-5.0.3/main.cpp 
new/kmozillahelper-5.0.4/main.cpp
--- old/kmozillahelper-5.0.3/main.cpp   2018-12-08 11:57:45.000000000 +0100
+++ new/kmozillahelper-5.0.4/main.cpp   2019-07-18 16:31:26.000000000 +0200
@@ -31,6 +31,7 @@
 
 #include <QtCore/QCommandLineParser>
 #include <QtCore/QMimeDatabase>
+#include <QtCore/QHash>
 #include <QtGui/QIcon>
 #include <QtWidgets/QApplication>
 #include <QtWidgets/QFileDialog>
@@ -53,7 +54,7 @@
 //#define DEBUG_KDE
 
 #define HELPER_VERSION 6
-#define APP_HELPER_VERSION "5.0.3"
+#define APP_HELPER_VERSION "5.0.4"
 
 int main(int argc, char* argv[])
 {
@@ -85,7 +86,8 @@
     : notifier(STDIN_FILENO, QSocketNotifier::Read)
     , arguments_read(false)
 {
-    connect(&notifier, SIGNAL(activated(int)), SLOT(readCommand()));
+    connect(&notifier, &QSocketNotifier::activated,
+            this, &Helper::readCommand);
 }
 
 void Helper::readCommand()
@@ -208,12 +210,20 @@
 
 bool Helper::handleHandlerExists()
 {
+    // Cache protocols types to avoid causing Thunderbird to hang 
(https://bugzilla.suse.com/show_bug.cgi?id=1037806).
+    static QHash<QString,bool> known_protocols;
+
     if(!readArguments(1))
         return false;
     QString protocol = getArgument();
     if(!allArgumentsUsed())
         return false;
-    if(KProtocolInfo::isHelperProtocol(protocol))
+
+    auto it(known_protocols.find(protocol));
+    if(it == known_protocols.end())
+        it = known_protocols.insert(protocol, 
KProtocolInfo::isHelperProtocol(protocol));
+
+    if(*it)
         return true;
 
     return 
KMimeTypeTrader::self()->preferredService(QLatin1String("x-scheme-handler/") + 
protocol) != nullptr;
@@ -458,7 +468,7 @@
     QMimeType mimeType = QMimeDatabase().mimeTypeForName(mime);
     if(!mime.isEmpty() && mimeType.isValid() && 
KMimeTypeTrader::self()->preferredService(mimeType.name()))
     {
-        return KRun::runUrl(url, mime, NULL); // TODO parent
+        return KRun::runUrl(url, mime, NULL, KRun::RunFlags()); // TODO parent
     }
     else
     {


Reply via email to