Author: arekm Date: Sun Oct 9 17:46:18 2011 GMT Module: packages Tag: HEAD ---- Log message: - rel 2; fix nepomuk utf8 queries
---- Files affected: packages/kde4-kdelibs: kde4-kdelibs-branch.diff (1.26 -> 1.27) , kde4-kdelibs.spec (1.257 -> 1.258) ---- Diffs: ================================================================ Index: packages/kde4-kdelibs/kde4-kdelibs-branch.diff diff -u packages/kde4-kdelibs/kde4-kdelibs-branch.diff:1.26 packages/kde4-kdelibs/kde4-kdelibs-branch.diff:1.27 --- packages/kde4-kdelibs/kde4-kdelibs-branch.diff:1.26 Sun Sep 11 06:58:24 2011 +++ packages/kde4-kdelibs/kde4-kdelibs-branch.diff Sun Oct 9 19:46:12 2011 @@ -1,24 +1,65 @@ -From: Marijn Kruisselbrink <[email protected]> -Date: Mon, 01 Aug 2011 16:02:21 +0000 -Subject: Fix bug introduced with svn revision 1023186 (git f62946276067d0a4b28e2039cfb506d7e8d678e4). -X-Git-Url: http://quickgit.kde.org/?p=kdelibs.git&a=commitdiff&h=d7daf264b9e8d2c98f210f2717c375026d585481 ---- -Fix bug introduced with svn revision 1023186 (git f62946276067d0a4b28e2039cfb506d7e8d678e4). -Don't produce an infinite loop when trying to get an invalid unit. -CCMAIL: [email protected] ---- - - ---- a/kunitconversion/converter.cpp -+++ b/kunitconversion/converter.cpp -@@ -165,7 +165,7 @@ UnitPtr Converter::unit(int unitId) cons - return unitClass; - } - } -- return unit(InvalidUnit); -+ return category[InvalidCategory]->defaultUnit(); - } +diff --git a/nepomuk/query/querybuilderdata_p.h b/nepomuk/query/querybuilderdata_p.h +index 055482e..3880e13 100644 +--- a/nepomuk/query/querybuilderdata_p.h ++++ b/nepomuk/query/querybuilderdata_p.h +@@ -32,6 +32,28 @@ + #include "query_p.h" + #include "groupterm_p.h" - UnitCategory* Converter::category(const QString& category) const - - ++namespace { ++/// A hack to avoid passing extended chars to the bif:search_excerpts method which cannot handle ++/// utf8 chars which use more than one char, ie. wide chars. ++/// Thus, we simply truncate each term at the first wide char. ++QStringList stripExtendedCharsHack(const QStringList& terms) { ++ QStringList newTerms; ++ foreach(const QString& term, terms) { ++ int i = 0; ++ while(i < term.length()) { ++ if(term[i].unicode() > 0x7f) { ++ break; ++ } ++ ++i; ++ } ++ if(i > 0) { ++ newTerms.append(term.left(i)); ++ } ++ } ++ return newTerms; ++} ++} ++ + namespace Nepomuk { + namespace Query { + class QueryBuilderData +@@ -246,16 +268,23 @@ namespace Nepomuk { + for( QHash<QString, QStringList>::const_iterator it = m_fullTextSearchTerms.constBegin(); + it != m_fullTextSearchTerms.constEnd(); ++it ) { + const QString& varName = it.key(); +- const QStringList& terms = it.value(); +- // bif:search_excerpt wants a vector of all search terms +- excerptParts +- << QString::fromLatin1("bif:search_excerpt(bif:vector(bif:charset_recode('%1', '_WIDE_', 'UTF-8')), %2)") +- .arg( terms.join(QLatin1String("','")), +- varName ); ++ const QStringList terms = stripExtendedCharsHack(it.value()); ++ if(terms.count()) { ++ // bif:search_excerpt wants a vector of all search terms ++ excerptParts ++ << QString::fromLatin1("bif:search_excerpt(bif:vector('%1'), %2)") ++ .arg( terms.join(QLatin1String("','")), ++ varName ); ++ } + } + +- return QString::fromLatin1("(bif:concat(%1)) as ?_n_f_t_m_ex_") +- .arg(excerptParts.join(QLatin1String(","))); ++ if(excerptParts.count()) { ++ return QString::fromLatin1("(bif:concat(%1)) as ?_n_f_t_m_ex_") ++ .arg(excerptParts.join(QLatin1String(","))); ++ } ++ else { ++ return QString(); ++ } + } + else { + return QString(); ================================================================ Index: packages/kde4-kdelibs/kde4-kdelibs.spec diff -u packages/kde4-kdelibs/kde4-kdelibs.spec:1.257 packages/kde4-kdelibs/kde4-kdelibs.spec:1.258 --- packages/kde4-kdelibs/kde4-kdelibs.spec:1.257 Mon Oct 3 10:38:32 2011 +++ packages/kde4-kdelibs/kde4-kdelibs.spec Sun Oct 9 19:46:12 2011 @@ -18,7 +18,7 @@ Summary(uk.UTF-8): K Desktop Environment - Бібліотеки Name: kde4-kdelibs Version: 4.7.2 -Release: 1 +Release: 2 License: LGPL Group: X11/Libraries Source0: ftp://ftp.kde.org/pub/kde/%{_state}/%{version}/src/%{orgname}-%{version}.tar.bz2 @@ -232,7 +232,7 @@ %prep %setup -q -n %{orgname}-%{version} -#%patch100 -p0 +%patch100 -p1 %patch0 -p1 %patch1 -p0 %patch2 -p0 @@ -1119,6 +1119,9 @@ All persons listed below can be reached at <cvs_login>@pld-linux.org $Log$ +Revision 1.258 2011/10/09 17:46:12 arekm +- rel 2; fix nepomuk utf8 queries + Revision 1.257 2011/10/03 08:38:32 arekm - up to 4.7.2 ================================================================ ---- CVS-web: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kde4-kdelibs/kde4-kdelibs-branch.diff?r1=1.26&r2=1.27&f=u http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kde4-kdelibs/kde4-kdelibs.spec?r1=1.257&r2=1.258&f=u _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
