Projects
Kontact:4.13:Git
kdepimlibs
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 44
View file
_service:set_version:kdepimlibs.spec
Changed
@@ -10,7 +10,7 @@ Name: kdepimlibs Summary: KDE PIM Libraries Epoch: 1 -Version: 4.13.0.git20161006.fbc67e5 +Version: 4.13.0.git20161205.7892826 Release: 0%{?dist} # http://techbase.kde.org/Policies/Licensing_Policy
View file
_service:recompress:tar_scm:kdepimlibs-4.13.0.git20161006.fbc67e5.tar.gz/CMakeLists.txt -> _service:recompress:tar_scm:kdepimlibs-4.13.0.git20161205.7892826.tar.gz/CMakeLists.txt
Changed
@@ -8,7 +8,7 @@ set(KDEPIMLIBS_VERSION_MAJOR 4) set(KDEPIMLIBS_VERSION_MINOR 13) set(KDEPIMLIBS_VERSION_PATCH 0) -set(KDEPIMLIBS_VERSION_KOLAB 30) +set(KDEPIMLIBS_VERSION_KOLAB 32) set(KDEPIMLIBS_VERSION ${KDEPIMLIBS_VERSION_MAJOR}.${KDEPIMLIBS_VERSION_MINOR}.${KDEPIMLIBS_VERSION_PATCH}.${KDEPIMLIBS_VERSION_KOLAB})
View file
_service:recompress:tar_scm:kdepimlibs-4.13.0.git20161006.fbc67e5.tar.gz/kcalcore/event.cpp -> _service:recompress:tar_scm:kdepimlibs-4.13.0.git20161205.7892826.tar.gz/kcalcore/event.cpp
Changed
@@ -219,10 +219,9 @@ bool multi = (start < end && start.date() != end.date()); - // End date is non inclusive - // If we have an incidence that duration is one day and ends with a start of a new day - // than it is not a multiday event - if (multi && end.time() != QTime(0,0,0)) { + //Catch the case where the incidence ends at midnight of the same day. + //=> not a multiday event + if (multi && end.time() == QTime(0,0,0)) { multi = start.daysTo(end) > 1; }
View file
_service:recompress:tar_scm:kdepimlibs-4.13.0.git20161006.fbc67e5.tar.gz/kpimutils/linklocator.cpp -> _service:recompress:tar_scm:kdepimlibs-4.13.0.git20161205.7892826.tar.gz/kpimutils/linklocator.cpp
Changed
@@ -95,6 +95,12 @@ QString LinkLocator::getUrl() { + return getUrlAndCheckValidHref(); +} + + +QString LinkLocator::getUrlAndCheckValidHref(bool *badurl) +{ QString url; if ( atUrl() ) { // NOTE: see http://tools.ietf.org/html/rfc3986#appendix-A and especially appendix-C @@ -129,13 +135,26 @@ url.reserve( maxUrlLen() ); // avoid allocs int start = mPos; + bool previousCharIsADoubleQuote = false; while ( ( mPos < (int)mText.length() ) && ( mText[mPos].isPrint() || mText[mPos].isSpace() ) && ( ( afterUrl.isNull() && !mText[mPos].isSpace() ) || ( !afterUrl.isNull() && mText[mPos] != afterUrl ) ) ) { if ( !mText[mPos].isSpace() ) { // skip whitespace - url.append( mText[mPos] ); - if ( url.length() > maxUrlLen() ) { + if (mText[mPos] == QLatin1Char('>') && previousCharIsADoubleQuote) { + //it's an invalid url + if (badurl) { + *badurl = true; + } + return QString(); + } + if (mText[mPos] == QLatin1Char('"')) { + previousCharIsADoubleQuote = true; + } else { + previousCharIsADoubleQuote = false; + } + url.append( mText[mPos] ); + if ( url.length() > maxUrlLen() ) { break; } } @@ -367,7 +386,28 @@ } else { const int start = locator.mPos; if ( !( flags & IgnoreUrls ) ) { - str = locator.getUrl(); + bool badUrl = false; + str = locator.getUrlAndCheckValidHref(&badUrl); + if (badUrl) { + QString resultBadUrl; + const int helperTextSize(locator.mText.count()); + for (int i = 0; i < helperTextSize; ++i) { + const QChar chBadUrl = locator.mText[i]; + if (chBadUrl == QLatin1Char('&')) { + resultBadUrl += QLatin1String("&"); + } else if (chBadUrl == QLatin1Char('"')) { + resultBadUrl += QLatin1String("""); + } else if (chBadUrl == QLatin1Char('<')) { + resultBadUrl += QLatin1String("<"); + } else if (chBadUrl == QLatin1Char('>')) { + resultBadUrl += QLatin1String(">"); + } else { + resultBadUrl += chBadUrl; + } + } + return resultBadUrl; + } + if ( !str.isEmpty() ) { QString hyperlink; if ( str.left( 4 ) == QLatin1String("www.") ) {
View file
_service:recompress:tar_scm:kdepimlibs-4.13.0.git20161006.fbc67e5.tar.gz/kpimutils/linklocator.h -> _service:recompress:tar_scm:kdepimlibs-4.13.0.git20161205.7892826.tar.gz/kpimutils/linklocator.h
Changed
@@ -107,6 +107,7 @@ @return The URL at the current scan position, or an empty string. */ QString getUrl(); + QString getUrlAndCheckValidHref(bool *badurl = 0); /** Attempts to grab an email address. If there is an @ symbol at the @@ -155,7 +156,7 @@ */ static QString pngToDataUrl( const QString & iconPath ); - protected: +protected: /** The plaintext string being scanned for URLs and email addresses. */
View file
_service:set_version:kdepimlibs.dsc
Changed
@@ -2,7 +2,7 @@ Source: kdepimlibs Binary: kdepimlibs5-dev, kdepimlibs-kio-plugins, libakonadi-contact4, libakonadi-kabc4, libakonadi-kcal4, libakonadi-kde4, libakonadi-kmime4, libakonadi-socialutils4, libakonadi-notes4, libakonadi-xml4, libgpgme++2, libkabc4, libkblog4, libkalarmcal2, libkcal4, libkcalcore4, libkcalutils4, libkholidays4, libkimap4, libkldap4, libkmbox4, libakonadi-calendar4, libkmime4, libkontactinterface4a, libkpimidentities4, libkpimtextedit4, libkpimutils4, libkresources4, libktnef4, libkxmlrpcclient4, libmailtransport4, libmicroblog4, libqgpgme1, libsyndication4, kdepimlibs-dbg Architecture: any -Version: 4.13.0.git20161006.fbc67e5 +Version: 4.13.0.git20161205.7892826 Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Uploaders: Sune Vuorela <sune@debian.org>, Fathi Boudra <fabo@debian.org>, Modestas Vainius <modax@debian.org>, George Kiagiadakis <kiagiadakis.george@gmail.com>, Eshat Cakar <info@eshat.de>, Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org>, Maximiliano Curia <maxy@debian.org> Homepage: http://pim.kde.org/
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.