4.7.3
This commit is contained in:
parent
842e4e2b0b
commit
01e9eb6ce2
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
/kdelibs-4.7.2.tar.bz2
|
||||
/kdelibs-4.7.3.tar.bz2
|
||||
|
@ -1,65 +0,0 @@
|
||||
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"
|
||||
|
||||
+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();
|
10
kdelibs.spec
10
kdelibs.spec
@ -22,8 +22,8 @@
|
||||
#define no_libkactivities 1
|
||||
|
||||
Summary: KDE Libraries
|
||||
Version: 4.7.2
|
||||
Release: 5%{?dist}
|
||||
Version: 4.7.3
|
||||
Release: 1%{?dist}
|
||||
|
||||
Name: kdelibs
|
||||
Epoch: 6
|
||||
@ -125,8 +125,6 @@ Patch50: kdelibs-4.7.0-knewstuff2_gpg2.patch
|
||||
Patch51: kdelibs-4.6.2-uri_mimetypes.patch
|
||||
|
||||
## upstream
|
||||
# fix nepomuk queries *not* using wide-unicode
|
||||
Patch100: kdelibs-4.7.2-nepomuk_unicode.patch
|
||||
|
||||
## security fix
|
||||
# Not Upstreamed? why not ? -- Rex
|
||||
@ -321,7 +319,6 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage
|
||||
%patch51 -p1 -b .uri_mimetypes
|
||||
|
||||
# upstream patches
|
||||
%patch100 -p1 -b .nepomuk_unicode
|
||||
|
||||
# security fixes
|
||||
%patch200 -p1 -b .CVE-2009-2702
|
||||
@ -574,6 +571,9 @@ rm -rf %{buildroot}
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Oct 29 2011 Rex Dieter <rdieter@fedoraproject.org> 4.7.3-1
|
||||
- 4.7.3
|
||||
|
||||
* Thu Oct 27 2011 Rex Dieter <rdieter@fedoraproject.org> 4.7.2-5
|
||||
- omit knotify hack, fix in qt instead
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user