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
|
||||
}:
|
||||
|
||||
@ -8,8 +8,5 @@ kdeFramework {
|
||||
propagatedNativeBuildInputs = [ extra-cmake-modules ];
|
||||
nativeBuildInputs = [ kdoctools ];
|
||||
propagatedBuildInputs = [ kconfig kcoreaddons kcrash kdbusaddons ki18n kwindowsystem ];
|
||||
patches = [
|
||||
./0001-qdiriterator-follow-symlinks.patch
|
||||
./0002-no-canonicalize-path.patch
|
||||
];
|
||||
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
|
||||
}
|
||||
|
@ -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…
Reference in New Issue
Block a user