Accepting request 498963 from home:Vogtinator:branches:openSUSE:Factory
- Add patch to allow running PIE enabled binaries (kde#350018): * 0001-Identify-PIE-binaries-application-x-sharedlib-as-exe.patch OBS-URL: https://build.opensuse.org/request/show/498963 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/kio?expand=0&rev=47
This commit is contained in:
parent
f340626681
commit
98ae87bfd4
@ -0,0 +1,66 @@
|
|||||||
|
From 5fce5efdd5fc2e2f4f3a2b7e89ba230318c7d21a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Fabian Vogt <fabian@ritter-vogt.de>
|
||||||
|
Date: Sun, 28 May 2017 14:49:03 +0200
|
||||||
|
Subject: [PATCH] Identify PIE binaries (application/x-sharedlib) as executable
|
||||||
|
files
|
||||||
|
|
||||||
|
Summary:
|
||||||
|
x86_64 binaries compiled with PIE are just shared objects with the
|
||||||
|
executable bit set. Without this patch, kio does not know that they
|
||||||
|
can be executed as well, causing "kioclient5 exec" to ask for an
|
||||||
|
application that can handle application/x-sharedlib.
|
||||||
|
|
||||||
|
BUG: 350018
|
||||||
|
|
||||||
|
Test Plan: Can run applications fine again.
|
||||||
|
|
||||||
|
Reviewers: dfaure, aacid
|
||||||
|
|
||||||
|
Subscribers: #frameworks
|
||||||
|
|
||||||
|
Tags: #frameworks
|
||||||
|
|
||||||
|
Differential Revision: https://phabricator.kde.org/D6002
|
||||||
|
---
|
||||||
|
src/widgets/krun.cpp | 4 +++-
|
||||||
|
src/widgets/krun.h | 2 +-
|
||||||
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/widgets/krun.cpp b/src/widgets/krun.cpp
|
||||||
|
index 399ca975..35d894a7 100644
|
||||||
|
--- a/src/widgets/krun.cpp
|
||||||
|
+++ b/src/widgets/krun.cpp
|
||||||
|
@@ -139,7 +139,8 @@ bool KRun::isExecutableFile(const QUrl &url, const QString &mimetype)
|
||||||
|
#ifdef Q_OS_WIN
|
||||||
|
mimeType.inherits(QLatin1String("application/x-ms-dos-executable")) ||
|
||||||
|
#endif
|
||||||
|
- mimeType.inherits(QStringLiteral("application/x-executable-script"))
|
||||||
|
+ mimeType.inherits(QStringLiteral("application/x-executable-script")) ||
|
||||||
|
+ mimeType.inherits(QStringLiteral("application/x-sharedlib"))
|
||||||
|
) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@@ -1438,6 +1439,7 @@ bool KRun::isExecutable(const QString &serviceType)
|
||||||
|
{
|
||||||
|
return (serviceType == QLatin1String("application/x-desktop") ||
|
||||||
|
serviceType == QLatin1String("application/x-executable") ||
|
||||||
|
+ serviceType == QLatin1String("application/x-sharedlib") ||
|
||||||
|
serviceType == QLatin1String("application/x-ms-dos-executable") ||
|
||||||
|
serviceType == QLatin1String("application/x-shellscript"));
|
||||||
|
}
|
||||||
|
diff --git a/src/widgets/krun.h b/src/widgets/krun.h
|
||||||
|
index 9885a838..f9069672 100644
|
||||||
|
--- a/src/widgets/krun.h
|
||||||
|
+++ b/src/widgets/krun.h
|
||||||
|
@@ -434,7 +434,7 @@ public:
|
||||||
|
* To be executable the file must pass the following rules:
|
||||||
|
* -# Must reside on the local filesystem.
|
||||||
|
* -# Must be marked as executable for the user by the filesystem.
|
||||||
|
- * -# The mime type must inherit application/x-executable or application/x-executable-script.
|
||||||
|
+ * -# The mime type must inherit application/x-executable, application/x-executable-script or application/x-sharedlib.
|
||||||
|
* To allow a script to run when the above rules are satisfied add the entry
|
||||||
|
* @code
|
||||||
|
* X-KDE-IsAlso=application/x-executable-script
|
||||||
|
--
|
||||||
|
2.13.0
|
||||||
|
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 29 11:36:10 UTC 2017 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Add patch to allow running PIE enabled binaries (kde#350018):
|
||||||
|
* 0001-Identify-PIE-binaries-application-x-sharedlib-as-exe.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Apr 15 10:11:51 CEST 2017 - lbeltrame@kde.org
|
Sat Apr 15 10:11:51 CEST 2017 - lbeltrame@kde.org
|
||||||
|
|
||||||
|
3
kio.spec
3
kio.spec
@ -77,6 +77,8 @@ Source1: baselibs.conf
|
|||||||
Patch0: kio_help-fallback-to-kde4-docs.patch
|
Patch0: kio_help-fallback-to-kde4-docs.patch
|
||||||
# PATCH-FIX-UPSTREAM enable-natural-sorting-in-KDirSortFilterProxyModel.patch wbauer@tmo.at boo#1033668, kde#343452 -- use natural sorting by default in the KDE file dialog and gwenview
|
# PATCH-FIX-UPSTREAM enable-natural-sorting-in-KDirSortFilterProxyModel.patch wbauer@tmo.at boo#1033668, kde#343452 -- use natural sorting by default in the KDE file dialog and gwenview
|
||||||
Patch1: enable-natural-sorting-in-KDirSortFilterProxyModel.patch
|
Patch1: enable-natural-sorting-in-KDirSortFilterProxyModel.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch2: 0001-Identify-PIE-binaries-application-x-sharedlib-as-exe.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -124,6 +126,7 @@ Development files.
|
|||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
|
%patch2 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%cmake_kf5 -d build
|
%cmake_kf5 -d build
|
||||||
|
Loading…
Reference in New Issue
Block a user