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(¬ifier, SIGNAL(activated(int)), SLOT(readCommand())); + connect(¬ifier, &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 {
