Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=kdebump2.git;a=commitdiff;h=0118d489201bd61a95e2feeafefbaf26b0d72237

commit 0118d489201bd61a95e2feeafefbaf26b0d72237
Author: Melko <me...@frugalware.org>
Date:   Fri Feb 8 11:05:26 2013 +0100

nepomuk-core-4.10.0-2-i686

* add patch to revert a commit that cause the
fileindexer not indexing recursively
https://bugs.kde.org/show_bug.cgi?id=314559

diff --git 
a/source/kde/nepomuk-core/0001-Revert-BasicIndexingQueue-Use-stacks-instead-of-queu.patch
 
b/source/kde/nepomuk-core/0001-Revert-BasicIndexingQueue-Use-stacks-instead-of-queu.patch
new file mode 100644
index 0000000..ab9947c
--- /dev/null
+++ 
b/source/kde/nepomuk-core/0001-Revert-BasicIndexingQueue-Use-stacks-instead-of-queu.patch
@@ -0,0 +1,105 @@
+From e834f507773f0355aef1fc8ccdfe7eff89a62c53 Mon Sep 17 00:00:00 2001
+From: Melko <me...@frugalware.org>
+Date: Fri, 8 Feb 2013 10:50:58 +0100
+Subject: [PATCH] Revert "BasicIndexingQueue: Use stacks instead of queues"
+
+This reverts commit 2f33141aa6716550e38b11ec9a0b000dd74eea79
+Fix https://bugs.kde.org/show_bug.cgi?id=314559
+---
+ services/fileindexer/basicindexingqueue.cpp | 18 ++++++------------
+ services/fileindexer/basicindexingqueue.h   |  5 ++---
+ 2 files changed, 8 insertions(+), 15 deletions(-)
+
+diff --git a/services/fileindexer/basicindexingqueue.cpp 
b/services/fileindexer/basicindexingqueue.cpp
+index a295330..b581786 100644
+--- a/services/fileindexer/basicindexingqueue.cpp
++++ b/services/fileindexer/basicindexingqueue.cpp
+@@ -54,14 +54,14 @@ void BasicIndexingQueue::clear()
+
+ void BasicIndexingQueue::clear(const QString& path)
+ {
+-    QMutableVectorIterator< QPair<QString, UpdateDirFlags> > it( m_paths );
++    QMutableListIterator< QPair<QString, UpdateDirFlags> > it( m_paths );
+     while( it.hasNext() ) {
+         it.next();
+         if( it.value().first.startsWith( path ) )
+             it.remove();
+     }
+
+-    QMutableVectorIterator< QPair<QDirIterator*, UpdateDirFlags> > iter( 
m_iterators );
++    QMutableListIterator< QPair<QDirIterator*, UpdateDirFlags> > iter( 
m_iterators );
+     while( iter.hasNext() ) {
+         QDirIterator* dirIter =  iter.next().first;
+
+@@ -100,7 +100,7 @@ void BasicIndexingQueue::enqueue(const QString& path, 
UpdateDirFlags flags)
+ {
+     kDebug() << path;
+     bool wasEmpty = m_paths.empty();
+-    m_paths.push( qMakePair( path, flags ) );
++    m_paths.enqueue( qMakePair( path, flags ) );
+     callForNextIteration();
+
+     if( wasEmpty )
+@@ -120,12 +120,12 @@ void BasicIndexingQueue::processNextIteration()
+             processingFile = process( dirIt->next(), pair.second );
+         }
+         else {
+-            delete m_iterators.pop().first;
++            delete m_iterators.dequeue().first;
+         }
+     }
+
+     else if( !m_paths.isEmpty() ) {
+-        QPair< QString, UpdateDirFlags > pair = m_paths.pop();
++        QPair< QString, UpdateDirFlags > pair = m_paths.dequeue();
+         processingFile = process( pair.first, pair.second );
+     }
+
+@@ -161,7 +161,7 @@ bool BasicIndexingQueue::process(const QString& path, 
UpdateDirFlags flags)
+             QDir::Filters dirFilter = 
QDir::NoDotAndDotDot|QDir::Readable|QDir::Files|QDir::Dirs;
+
+             QPair<QDirIterator*, UpdateDirFlags> pair = qMakePair( new 
QDirIterator( path, dirFilter ), flags );
+-            m_iterators.push( pair );
++            m_iterators.enqueue( pair );
+         }
+     }
+     else if( info.isFile() && (forced || indexingRequired) ) {
+@@ -259,12 +259,6 @@ void BasicIndexingQueue::slotIndexingFinished(KJob* job)
+
+     emit endIndexingFile( url );
+
+-    // Give back the memory
+-    if( m_paths.isEmpty() )
+-        m_paths.clear();
+-    if( m_iterators.isEmpty() )
+-        m_iterators.clear();
+-
+     // Continue the queue
+     finishIteration();
+ }
+diff --git a/services/fileindexer/basicindexingqueue.h 
b/services/fileindexer/basicindexingqueue.h
+index 29dd9fd..5d1c190 100644
+--- a/services/fileindexer/basicindexingqueue.h
++++ b/services/fileindexer/basicindexingqueue.h
+@@ -23,7 +23,6 @@
+
+ #include "indexingqueue.h"
+ #include <KJob>
+-#include <QtCore/QStack>
+
+ namespace Nepomuk2 {
+
+@@ -106,8 +105,8 @@ namespace Nepomuk2 {
+          */
+         bool process(const QString& path, Nepomuk2::UpdateDirFlags flags);
+
+-        QStack< QPair<QString, UpdateDirFlags> > m_paths;
+-        QStack< QPair<QDirIterator*, UpdateDirFlags> > m_iterators;
++        QQueue< QPair<QString, UpdateDirFlags> > m_paths;
++        QQueue< QPair<QDirIterator*, UpdateDirFlags> > m_iterators;
+
+         QUrl m_currentUrl;
+         QString m_currentMimeType;
+--
+1.8.1.2
+
diff --git a/source/kde/nepomuk-core/FrugalBuild 
b/source/kde/nepomuk-core/FrugalBuild
index 96e2598..284d4f9 100644
--- a/source/kde/nepomuk-core/FrugalBuild
+++ b/source/kde/nepomuk-core/FrugalBuild
@@ -2,7 +2,7 @@
# Maintainer: centuri0 <achevaux at gmail dot com>

pkgname=nepomuk-core
-pkgrel=1
+pkgrel=2
pkgdesc="Central nepomuk services."
groups=('kde')
archs=('i686' 'x86_64')
@@ -10,5 +10,7 @@ Finclude kde
depends=("${depends[@]}" "libkutils>=${_F_kde_ver}" "poppler-qt4")
makedepends=("${makedepends[@]}" 'doxygen' 'soprano-backend-redland' 
'soprano-backend-virtuoso' \
"libqttest>=$_F_kde_qtver" "kdelibs-compiletime>=$_F_kde_ver" 
"kdelibs>=$_F_kde_ver")
+source=("${source[@]}" 
"0001-Revert-BasicIndexingQueue-Use-stacks-instead-of-queu.patch")
+sha1sums=("${sha1sums[@]}" '1f504bdcfa1116f9472fcb18353819cb4f7d406e')

# optimization OK
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to