backport ktraderclient5 fix for x-scheme-handler's (#1308384,kde#358159)

epel8
Rex Dieter 9 years ago
parent b4273aa775
commit 0c51e9df11

@ -0,0 +1,51 @@
From c9edc4769d278f174d821cf6d9364fbca356b676 Mon Sep 17 00:00:00 2001
From: David Faure <faure@kde.org>
Date: Sun, 6 Mar 2016 19:35:08 +0100
Subject: [PATCH 9/9] Fix handling of x-scheme-handler/* in mimeapps.list
parsing.
Since this isn't a known mimetype, such lines were being ignored.
BUG: 358159
FIXED-IN: 5.21
---
autotests/CMakeLists.txt | 2 +-
autotests/kmimeassociationstest.cpp | 3 +++
src/sycoca/kmimeassociations.cpp | 7 ++++---
tests/CMakeLists.txt | 2 +-
4 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/sycoca/kmimeassociations.cpp b/src/sycoca/kmimeassociations.cpp
index 2ddcc07..25ce3fe 100644
--- a/src/sycoca/kmimeassociations.cpp
+++ b/src/sycoca/kmimeassociations.cpp
@@ -27,6 +27,7 @@
#include <QFile>
#include <qstandardpaths.h>
#include <qmimedatabase.h>
+#include "sycocadebug.h"
KMimeAssociations::KMimeAssociations(KOfferHash &offerHash, KServiceFactory *serviceFactory)
: m_offerHash(offerHash), m_serviceFactory(serviceFactory)
@@ -106,15 +107,15 @@ void KMimeAssociations::parseAddedAssociations(const KConfigGroup &group, const
QMimeDatabase db;
Q_FOREACH (const QString &mimeName, group.keyList()) {
const QStringList services = group.readXdgListEntry(mimeName);
- const QString resolvedMimeName = db.mimeTypeForName(mimeName).name();
+ const QString resolvedMimeName = mimeName.startsWith("x-scheme-handler/") ? mimeName : db.mimeTypeForName(mimeName).name();
if (resolvedMimeName.isEmpty()) {
- //qDebug() << file << "specifies unknown mimeType" << mimeName << "in" << group.name();
+ qCDebug(SYCOCA) << file << "specifies unknown mimeType" << mimeName << "in" << group.name();
} else {
int pref = basePreference;
Q_FOREACH (const QString &service, services) {
KService::Ptr pService = m_serviceFactory->findServiceByStorageId(service);
if (!pService) {
- //qDebug() << file << "specifies unknown service" << service << "in" << group.name();
+ qDebug(SYCOCA) << file << "specifies unknown service" << service << "in" << group.name();
} else {
//qDebug() << "adding mime" << resolvedMimeName << "to service" << pService->entryPath() << "pref=" << pref;
m_offerHash.addServiceOffer(resolvedMimeName, KServiceOffer(pService, pref, 0, pService->allowAsDefault()));
--
2.5.0

@ -3,7 +3,7 @@
Name: kf5-%{framework}
Summary: KDE Frameworks 5 Tier 3 solution for advanced plugin and service introspection
Version: 5.19.0
Release: 1%{?dist}
Release: 2%{?dist}
# mixture of LGPLv2 and LGPLv2+ (mostly the latter)
License: LGPLv2
@ -18,16 +18,19 @@ URL: https://projects.kde.org/kservice
%endif
Source0: http://download.kde.org/%{stable}/frameworks/%{versiondir}/%{framework}-%{version}.tar.xz
## upstream patches
Patch9: 0009-Fix-handling-of-x-scheme-handler-in-mimeapps.list-pa.patch
## downstream patches
# Fedora customizations to the menu categories
# adds the Administration menu from redhat-menus which equals System + Settings
# This prevents the stuff getting listed twice, under both System and Settings.
Patch0: kservice-5.15.0-xdg-menu.patch
Patch100: kservice-5.15.0-xdg-menu.patch
# kbuildsycoca5 always gives:
# kf5.kservice.sycoca: Parse error in "$HOME/.config/menus/applications-merged/xdg-desktop-menu-dummy.menu" , line 1 , col 1 : "unexpected end of file"
# hide that by default, make it qCDebug instead (of qCWarning)
Patch1: kservice-5.17.0-vfolder_spam.patch
Patch101: kservice-5.17.0-vfolder_spam.patch
BuildRequires: extra-cmake-modules >= %{version}
BuildRequires: kf5-kconfig-devel >= %{version}
@ -104,6 +107,9 @@ mkdir -p %{buildroot}%{_kf5_datadir}/kservicetypes5
%changelog
* Mon Mar 07 2016 Rex Dieter <rdieter@fedoraproject.org> 5.19.0-2
- backport ktraderclient5 fix for x-scheme-handler's (#1308384,kde#358159)
* Thu Feb 11 2016 Daniel Vrátil <dvratil@fedoraproject.org> - 5.19.0-1
- KDE Frameworks 5.19.0

Loading…
Cancel
Save