parent
6d01760dd4
commit
3f753a655d
@ -1,25 +0,0 @@
|
|||||||
From ae8919eb81abad369e4a26ffcd845b140983398d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thomas Tuegel <ttuegel@gmail.com>
|
|
||||||
Date: Wed, 14 Oct 2015 06:28:57 -0500
|
|
||||||
Subject: [PATCH 1/2] qdiriterator follow symlinks
|
|
||||||
|
|
||||||
---
|
|
||||||
src/sycoca/kbuildsycoca.cpp | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/sycoca/kbuildsycoca.cpp b/src/sycoca/kbuildsycoca.cpp
|
|
||||||
index 1deae14..250baa8 100644
|
|
||||||
--- a/src/sycoca/kbuildsycoca.cpp
|
|
||||||
+++ b/src/sycoca/kbuildsycoca.cpp
|
|
||||||
@@ -208,7 +208,7 @@ bool KBuildSycoca::build()
|
|
||||||
QStringList relFiles;
|
|
||||||
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, m_resourceSubdir, QStandardPaths::LocateDirectory);
|
|
||||||
Q_FOREACH (const QString &dir, dirs) {
|
|
||||||
- QDirIterator it(dir, QDirIterator::Subdirectories);
|
|
||||||
+ QDirIterator it(dir, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
|
|
||||||
while (it.hasNext()) {
|
|
||||||
const QString filePath = it.next();
|
|
||||||
Q_ASSERT(filePath.startsWith(dir)); // due to the line below...
|
|
||||||
--
|
|
||||||
2.5.2
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
|||||||
From 46d124da602d84b7611a7ff0ac0862168d451cdb Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thomas Tuegel <ttuegel@gmail.com>
|
|
||||||
Date: Wed, 14 Oct 2015 06:31:29 -0500
|
|
||||||
Subject: [PATCH 2/2] no canonicalize path
|
|
||||||
|
|
||||||
---
|
|
||||||
src/sycoca/vfolder_menu.cpp | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/sycoca/vfolder_menu.cpp b/src/sycoca/vfolder_menu.cpp
|
|
||||||
index d3e31c3..d15d743 100644
|
|
||||||
--- a/src/sycoca/vfolder_menu.cpp
|
|
||||||
+++ b/src/sycoca/vfolder_menu.cpp
|
|
||||||
@@ -415,7 +415,7 @@ VFolderMenu::absoluteDir(const QString &_dir, const QString &baseDir, bool keepR
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!relative) {
|
|
||||||
- QString resolved = QDir(dir).canonicalPath();
|
|
||||||
+ QString resolved = QDir::cleanPath(dir);
|
|
||||||
if (!resolved.isEmpty()) {
|
|
||||||
dir = resolved;
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.5.2
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
|
{ kdeFramework, lib, copyPathsToStore, extra-cmake-modules, kconfig, kcoreaddons
|
||||||
, kcrash, kdbusaddons, kdoctools, ki18n, kwindowsystem
|
, kcrash, kdbusaddons, kdoctools, ki18n, kwindowsystem
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@ -8,8 +8,5 @@ kdeFramework {
|
|||||||
propagatedNativeBuildInputs = [ extra-cmake-modules ];
|
propagatedNativeBuildInputs = [ extra-cmake-modules ];
|
||||||
nativeBuildInputs = [ kdoctools ];
|
nativeBuildInputs = [ kdoctools ];
|
||||||
propagatedBuildInputs = [ kconfig kcoreaddons kcrash kdbusaddons ki18n kwindowsystem ];
|
propagatedBuildInputs = [ kconfig kcoreaddons kcrash kdbusaddons ki18n kwindowsystem ];
|
||||||
patches = [
|
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
|
||||||
./0001-qdiriterator-follow-symlinks.patch
|
|
||||||
./0002-no-canonicalize-path.patch
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,25 @@
|
|||||||
|
Index: kservice-5.21.0/src/sycoca/ksycocautils.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kservice-5.21.0.orig/src/sycoca/ksycocautils.cpp
|
||||||
|
+++ kservice-5.21.0/src/sycoca/ksycocautils.cpp
|
||||||
|
@@ -24,9 +24,10 @@
|
||||||
|
|
||||||
|
void KSycocaUtilsPrivate::read(QDataStream &s, QString &str)
|
||||||
|
{
|
||||||
|
+ const qint32 bufferSize = 65528;
|
||||||
|
quint32 bytes;
|
||||||
|
s >> bytes; // read size of string
|
||||||
|
- if (bytes > 8192) { // null string or too big
|
||||||
|
+ if (bytes > bufferSize) { // null string or too big
|
||||||
|
if (bytes != 0xffffffff) {
|
||||||
|
KSycoca::flagError();
|
||||||
|
}
|
||||||
|
@@ -35,7 +36,7 @@ void KSycocaUtilsPrivate::read(QDataStre
|
||||||
|
int bt = bytes / 2;
|
||||||
|
str.resize(bt);
|
||||||
|
QChar *ch = str.data();
|
||||||
|
- char t[8192];
|
||||||
|
+ char t[bufferSize];
|
||||||
|
char *b = t;
|
||||||
|
s.readRawData(b, bytes);
|
||||||
|
while (bt--) {
|
@ -0,0 +1,13 @@
|
|||||||
|
Index: kservice-5.21.0/src/sycoca/vfolder_menu.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kservice-5.21.0.orig/src/sycoca/vfolder_menu.cpp
|
||||||
|
+++ kservice-5.21.0/src/sycoca/vfolder_menu.cpp
|
||||||
|
@@ -415,7 +415,7 @@ VFolderMenu::absoluteDir(const QString &
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!relative) {
|
||||||
|
- QString resolved = QDir(dir).canonicalPath();
|
||||||
|
+ QString resolved = QDir::cleanPath(dir);
|
||||||
|
if (!resolved.isEmpty()) {
|
||||||
|
dir = resolved;
|
||||||
|
}
|
@ -0,0 +1,13 @@
|
|||||||
|
Index: kservice-5.21.0/src/sycoca/kbuildsycoca.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kservice-5.21.0.orig/src/sycoca/kbuildsycoca.cpp
|
||||||
|
+++ kservice-5.21.0/src/sycoca/kbuildsycoca.cpp
|
||||||
|
@@ -203,7 +203,7 @@ bool KBuildSycoca::build()
|
||||||
|
QSet<QString> relFiles;
|
||||||
|
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, m_resourceSubdir, QStandardPaths::LocateDirectory);
|
||||||
|
Q_FOREACH (const QString &dir, dirs) {
|
||||||
|
- QDirIterator it(dir, QDirIterator::Subdirectories);
|
||||||
|
+ QDirIterator it(dir, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
|
||||||
|
while (it.hasNext()) {
|
||||||
|
const QString filePath = it.next();
|
||||||
|
Q_ASSERT(filePath.startsWith(dir)); // due to the line below...
|
3
pkgs/desktops/kde-5/frameworks-5.21/kservice/series
Normal file
3
pkgs/desktops/kde-5/frameworks-5.21/kservice/series
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
qdiriterator-follow-symlinks.patch
|
||||||
|
no-canonicalize-path.patch
|
||||||
|
ksycoca-buffer-size.patch
|
Loading…
x
Reference in New Issue
Block a user