diff options
Diffstat (limited to 'source/kde/patch')
86 files changed, 0 insertions, 4383 deletions
diff --git a/source/kde/patch/README b/source/kde/patch/README deleted file mode 100644 index 2478e45f..00000000 --- a/source/kde/patch/README +++ /dev/null @@ -1,18 +0,0 @@ - -IMPORTANT! - -To fail/exit a script, use this: - -[command that fails] || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -DO NOT USE THIS: - -[command that fails] || exit 1 - -as it will cause the parent script to exit in the wrong location and possibly -silently skip building some packages. - -Thanks, - -The Management - diff --git a/source/kde/patch/calligra.patch b/source/kde/patch/calligra.patch deleted file mode 100644 index e9e6cfd7..00000000 --- a/source/kde/patch/calligra.patch +++ /dev/null @@ -1,15 +0,0 @@ -# Fix build with mariadb 10.2+: -zcat $CWD/patch/calligra/calligra.mariadb.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Patch for boost 1.65.0+: -zcat $CWD/patch/calligra/boost-1.65.0.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Fedora patches, mostly backports to fix a Calligra Plan crash: -zcat $CWD/patch/calligra/0001-adapt-to-libwps-0.4.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/calligra/calligra-2.9.11-gcc6_arm.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch b/source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch deleted file mode 100644 index b4494b3e..00000000 --- a/source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch +++ /dev/null @@ -1,52 +0,0 @@ -From e81fe84405bc635dfa93e54fb8a3c8e6065dbf10 Mon Sep 17 00:00:00 2001 -From: David Tardon <dtardon@redhat.com> -Date: Sat, 6 Jun 2015 18:27:24 +0200 -Subject: [PATCH] adapt to libwps 0.4 - ---- - cmake/modules/FindLibWps.cmake | 6 +++--- - filters/words/works/import/WPSImport.cpp | 4 +++- - 2 files changed, 6 insertions(+), 4 deletions(-) - -diff --git a/cmake/modules/FindLibWps.cmake b/cmake/modules/FindLibWps.cmake -index f8c8225..58ef2b5 100644 ---- a/cmake/modules/FindLibWps.cmake -+++ b/cmake/modules/FindLibWps.cmake -@@ -10,16 +10,16 @@ - - include(LibFindMacros) - libfind_package(LIBWPS LibWpd) --libfind_pkg_check_modules(LIBWPS_PKGCONF libwps-0.3) -+libfind_pkg_check_modules(LIBWPS_PKGCONF libwps-0.4) - - find_path(LIBWPS_INCLUDE_DIR - NAMES libwps/libwps.h - HINTS ${LIBWPS_PKGCONF_INCLUDE_DIRS} ${LIBWPS_PKGCONF_INCLUDEDIR} -- PATH_SUFFIXES libwps-0.3 -+ PATH_SUFFIXES libwps-0.4 - ) - - find_library(LIBWPS_LIBRARY -- NAMES wps wps-0.3 -+ NAMES wps wps-0.4 - HINTS ${LIBWPS_PKGCONF_LIBRARY_DIRS} ${LIBWPS_PKGCONF_LIBDIR} - ) - -diff --git a/filters/words/works/import/WPSImport.cpp b/filters/words/works/import/WPSImport.cpp -index eea2cc9..94b859d 100644 ---- a/filters/words/works/import/WPSImport.cpp -+++ b/filters/words/works/import/WPSImport.cpp -@@ -91,7 +91,9 @@ public: - bool isSupportedFormat(librevenge::RVNGInputStream &input) - { - WPSKind kind = WPS_TEXT; -- WPSConfidence confidence = WPSDocument::isFileFormatSupported(&input, kind); -+ WPSCreator creator = WPS_MSWORKS; -+ bool needsEncoding = false; -+ WPSConfidence confidence = WPSDocument::isFileFormatSupported(&input, kind, creator, needsEncoding); - if (confidence == WPS_CONFIDENCE_NONE || kind != WPS_TEXT) - return false; - return true; --- -2.4.2 - diff --git a/source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch b/source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch deleted file mode 100644 index b3f38d47..00000000 --- a/source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 7c64caec3022b28775ea85864eef47bf2ac51066 Mon Sep 17 00:00:00 2001 -From: Dag Andersen <danders@get2net.dk> -Date: Mon, 22 Aug 2016 08:49:13 +0200 -Subject: [PATCH 65/80] Backport: Plan: Fix crash due to accessing deleted - object - -KReportDesigner takes ownership of reportdata, so give it a clone it can delete ---- - plan/libs/ui/reports/reportview.cpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/plan/libs/ui/reports/reportview.cpp b/plan/libs/ui/reports/reportview.cpp -index 462a31d..8552790 100644 ---- a/plan/libs/ui/reports/reportview.cpp -+++ b/plan/libs/ui/reports/reportview.cpp -@@ -1250,10 +1250,10 @@ void ReportDesigner::createDockers() - - void ReportDesigner::setReportData( const QString &tag ) - { -- -+ emit optionsModified(); - ReportData *rd = Report::findReportData( m_reportdatamodels, tag ); -- if ( rd != m_designer->reportData() ) { -- emit optionsModified(); -+ if ( rd ) { -+ rd = rd->clone(); // KReportDesigner takes ownership, so give it a clone it can delete - } - m_designer->setReportData( rd ); - --- -2.7.4 - diff --git a/source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch b/source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch deleted file mode 100644 index efbd9ac8..00000000 --- a/source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch +++ /dev/null @@ -1,138 +0,0 @@ -From 4d9762cd151b7d6a208aece8cebcdbe09bd41703 Mon Sep 17 00:00:00 2001 -From: Dag Andersen <danders@get2net.dk> -Date: Mon, 22 Aug 2016 09:15:32 +0200 -Subject: [PATCH 66/80] Backport: Plan: Do not crash if scheduler plugins not - found - -Shouldn't happen atm, but... ---- - plan/libs/models/kptschedulemodel.cpp | 69 ++++++++++++++++++++++------------- - 1 file changed, 43 insertions(+), 26 deletions(-) - -diff --git a/plan/libs/models/kptschedulemodel.cpp b/plan/libs/models/kptschedulemodel.cpp -index 35b74bc..e3ce298 100644 ---- a/plan/libs/models/kptschedulemodel.cpp -+++ b/plan/libs/models/kptschedulemodel.cpp -@@ -252,9 +252,16 @@ Qt::ItemFlags ScheduleItemModel::flags( const QModelIndex &index ) const - if ( !m_readWrite ) { - return flags &= ~Qt::ItemIsEditable; - } -- flags &= ~Qt::ItemIsEditable; - ScheduleManager *sm = manager( index ); -- int capabilities = sm->schedulerPlugin()->capabilities(); -+ if ( sm == 0 ) { -+ return flags; -+ } -+ SchedulerPlugin *pl = sm->schedulerPlugin(); -+ if ( pl == 0 ) { -+ return flags; -+ } -+ int capabilities = pl->capabilities(); -+ flags &= ~Qt::ItemIsEditable; - if ( sm && ! sm->isBaselined() ) { - switch ( index.column() ) { - case ScheduleModel::ScheduleState: break; -@@ -452,7 +459,11 @@ QVariant ScheduleItemModel::allowOverbooking( const QModelIndex &index, int role - if ( sm == 0 ) { - return QVariant(); - } -- int capabilities = sm->schedulerPlugin()->capabilities(); -+ SchedulerPlugin *pl = sm->schedulerPlugin(); -+ if ( pl == 0 ) { -+ return QVariant(); -+ } -+ int capabilities = pl->capabilities(); - switch ( role ) { - case Qt::EditRole: - return sm->allowOverbooking(); -@@ -480,11 +491,11 @@ QVariant ScheduleItemModel::allowOverbooking( const QModelIndex &index, int role - if ( capabilities & SchedulerPlugin::AllowOverbooking ) { - return sm->allowOverbooking() - ? i18nc( "@info:tooltip", "Allow overbooking of resources" ) -- : i18nc( "@info:tooltip 1=scheduler name", "%1 always allows overbooking of resources", sm->schedulerPlugin()->name() ); -+ : i18nc( "@info:tooltip 1=scheduler name", "%1 always allows overbooking of resources", pl->name() ); - } - if ( capabilities & SchedulerPlugin::AvoidOverbooking ) { - return sm->allowOverbooking() -- ? i18nc( "@info:tooltip 1=scheduler name", "%1 always avoids overbooking of resources", sm->schedulerPlugin()->name() ) -+ ? i18nc( "@info:tooltip 1=scheduler name", "%1 always avoids overbooking of resources", pl->name() ) - : i18nc( "@info:tooltip", "Avoid overbooking resources" ); - } - break; -@@ -637,7 +648,11 @@ QVariant ScheduleItemModel::schedulingDirection( const QModelIndex &index, int r - if ( sm == 0 ) { - return QVariant(); - } -- int capabilities = sm->schedulerPlugin()->capabilities(); -+ SchedulerPlugin *pl = sm->schedulerPlugin(); -+ if ( pl == 0 ) { -+ return QVariant(); -+ } -+ int capabilities = pl->capabilities(); - switch ( role ) { - case Qt::EditRole: - return sm->schedulingDirection(); -@@ -664,13 +679,13 @@ QVariant ScheduleItemModel::schedulingDirection( const QModelIndex &index, int r - } - if ( capabilities & SchedulerPlugin::ScheduleForward ) { - return sm->schedulingDirection() -- ? i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target start time", sm->schedulerPlugin()->name() ) -+ ? i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target start time", pl->name() ) - : i18nc( "@info:tooltip", "Schedule project from target start time" ); - } - if ( capabilities & SchedulerPlugin::ScheduleBackward ) { - return sm->schedulingDirection() - ? i18nc( "@info:tooltip", "Schedule project from target end time" ) -- : i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target end time", sm->schedulerPlugin()->name() ); -+ : i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target end time", pl->name() ); - } - break; - case Role::EnumList: -@@ -708,24 +723,26 @@ QVariant ScheduleItemModel::scheduler( const QModelIndex &index, int role ) cons - return QVariant(); - } - SchedulerPlugin *pl = sm->schedulerPlugin(); -- switch ( role ) { -- case Qt::EditRole: -- return sm->schedulerPluginId(); -- case Qt::DisplayRole: -- return pl ? pl->name() : i18n( "Unknown" ); -- case Qt::ToolTipRole: -- return pl ? pl->comment() : QString(); -- case Role::EnumList: -- return sm->schedulerPluginNames(); -- case Role::EnumListValue: -- return sm->schedulerPluginIndex(); -- case Qt::TextAlignmentRole: -- return Qt::AlignCenter; -- case Qt::StatusTipRole: -- return QVariant(); -- case Qt::WhatsThisRole: { -- QString s = pl->description(); -- return s.isEmpty() ? QVariant() : QVariant( s ); -+ if ( pl ) { -+ switch ( role ) { -+ case Qt::EditRole: -+ return sm->schedulerPluginId(); -+ case Qt::DisplayRole: -+ return pl ? pl->name() : i18n( "Unknown" ); -+ case Qt::ToolTipRole: -+ return pl ? pl->comment() : QString(); -+ case Role::EnumList: -+ return sm->schedulerPluginNames(); -+ case Role::EnumListValue: -+ return sm->schedulerPluginIndex(); -+ case Qt::TextAlignmentRole: -+ return Qt::AlignCenter; -+ case Qt::StatusTipRole: -+ return QVariant(); -+ case Qt::WhatsThisRole: { -+ QString s = pl->description(); -+ return s.isEmpty() ? QVariant() : QVariant( s ); -+ } - } - } - return QVariant(); --- -2.7.4 - diff --git a/source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch b/source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch deleted file mode 100644 index 4db4becc..00000000 --- a/source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 5cffbe5ecf1f82369abbad1a06154368459f7845 Mon Sep 17 00:00:00 2001 -From: Dag Andersen <danders@get2net.dk> -Date: Mon, 22 Aug 2016 09:20:32 +0200 -Subject: [PATCH 67/80] Backport: Plan: Fix insert file - -Use KUrl instead of QString for filename -KoDocument::openUrl() opens the url (not KoPart) ---- - plan/kptmaindocument.cpp | 23 ++++++++++------------- - plan/kptmaindocument.h | 4 ++-- - plan/kptview.cpp | 2 +- - 3 files changed, 13 insertions(+), 16 deletions(-) - -diff --git a/plan/kptmaindocument.cpp b/plan/kptmaindocument.cpp -index 2343471..e418972 100644 ---- a/plan/kptmaindocument.cpp -+++ b/plan/kptmaindocument.cpp -@@ -947,35 +947,32 @@ bool MainDocument::loadAndParse(KoStore *store, const QString &filename, KoXmlDo - return true; - } - --void MainDocument::insertFile( const QString &filename, Node *parent, Node *after ) -+void MainDocument::insertFile( const KUrl &url, Node *parent, Node *after ) - { - Part *part = new Part( this ); - MainDocument *doc = new MainDocument( part ); - part->setDocument( doc ); - doc->disconnect(); // doc shall not handle feedback from openUrl() - doc->setAutoSave( 0 ); //disable -- doc->m_insertFileInfo.url = filename; -+ doc->m_insertFileInfo.url = url; - doc->m_insertFileInfo.parent = parent; - doc->m_insertFileInfo.after = after; - connect(doc, SIGNAL(completed()), SLOT(insertFileCompleted())); - connect(doc, SIGNAL(canceled(QString)), SLOT(insertFileCancelled(QString))); - -- doc->openUrl( KUrl( filename ) ); -+ doc->openUrl( url ); - } - - void MainDocument::insertFileCompleted() - { - kDebug(planDbg())<<sender(); -- Part *part = qobject_cast<Part*>( sender() ); -- if ( part ) { -- MainDocument *doc = qobject_cast<MainDocument*>( part->document() ); -- if ( doc ) { -- Project &p = doc->getProject(); -- insertProject( p, doc->m_insertFileInfo.parent, doc->m_insertFileInfo.after ); -- } else { -- KMessageBox::error( 0, i18n("Internal error, failed to insert file.") ); -- } -- part->deleteLater(); // also deletes document -+ MainDocument *doc = qobject_cast<MainDocument*>( sender() ); -+ if ( doc ) { -+ Project &p = doc->getProject(); -+ insertProject( p, doc->m_insertFileInfo.parent, doc->m_insertFileInfo.after ); -+ doc->documentPart()->deleteLater(); // also deletes document -+ } else { -+ KMessageBox::error( 0, i18n("Internal error, failed to insert file.") ); - } - } - -diff --git a/plan/kptmaindocument.h b/plan/kptmaindocument.h -index 5ead4ea..c467e1f 100644 ---- a/plan/kptmaindocument.h -+++ b/plan/kptmaindocument.h -@@ -117,7 +117,7 @@ public: - Package *loadWorkPackageXML( Project& project, QIODevice*, const KoXmlDocument& document, const KUrl& url ); - QMap<KDateTime, Package*> workPackages() const { return m_workpackages; } - -- void insertFile( const QString &filename, Node *parent, Node *after = 0 ); -+ void insertFile( const KUrl &url, Node *parent, Node *after = 0 ); - bool insertProject( Project &project, Node *parent, Node *after ); - - KPlatoAboutPage &aboutPage() { return m_aboutPage; } -@@ -165,7 +165,7 @@ protected: - - // used by insert file - struct InsertFileInfo { -- QString url; -+ KUrl url; - Node *parent; - Node *after; - } m_insertFileInfo; -diff --git a/plan/kptview.cpp b/plan/kptview.cpp -index 6876c3e..b38d8b6 100644 ---- a/plan/kptview.cpp -+++ b/plan/kptview.cpp -@@ -1452,7 +1452,7 @@ void View::slotInsertFileFinished( int result ) - return; - } - if ( result == QDialog::Accepted ) { -- getPart()->insertFile( dlg->url().url(), dlg->parentNode(), dlg->afterNode() ); -+ getPart()->insertFile( dlg->url(), dlg->parentNode(), dlg->afterNode() ); - } - dlg->deleteLater(); - } --- -2.7.4 - diff --git a/source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch b/source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch deleted file mode 100644 index ca6ae192..00000000 --- a/source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch +++ /dev/null @@ -1,68 +0,0 @@ -From fd5b8dca68d0a418aac926fe60814ebe537ee032 Mon Sep 17 00:00:00 2001 -From: Dag Andersen <danders@get2net.dk> -Date: Mon, 22 Aug 2016 10:00:52 +0200 -Subject: [PATCH 68/80] Backport: Plan: Fix task module load and save - -Workaround: saveTaskModules destroys project ---- - plan/kptview.cpp | 19 ++++++++++++------- - plan/libs/models/kptnodeitemmodel.cpp | 6 +++++- - 2 files changed, 17 insertions(+), 8 deletions(-) - -diff --git a/plan/kptview.cpp b/plan/kptview.cpp -index b38d8b6..af606f6 100644 ---- a/plan/kptview.cpp -+++ b/plan/kptview.cpp -@@ -114,6 +114,7 @@ - #include "kptviewlistdocker.h" - #include "kptviewlist.h" - #include "kptschedulesdocker.h" -+#include "kptpart.h" - #include "kptdebug.h" - - #include "plansettings.h" -@@ -3033,13 +3034,17 @@ void View::saveTaskModule( const KUrl &url, Project *project ) - QString dir = Factory::global().dirs()->saveLocation( "plan_taskmodules" ); - kDebug(planDbg())<<"dir="<<dir; - if ( ! dir.isEmpty() ) { -- MainDocument part(getKoPart()); -- part.insertProject( *project, 0, 0 ); -- part.getProject().setName( project->name() ); -- part.getProject().setLeader( project->leader() ); -- part.getProject().setDescription( project->description() ); -- part.saveNativeFormat( dir + url.fileName() ); -- kDebug(planDbg())<<dir + url.fileName(); -+ Part *part = new Part( this ); -+ MainDocument *doc = new MainDocument( part ); -+ part->setDocument( doc ); -+ doc->disconnect(); // doc shall not handle feedback from openUrl() -+ doc->setAutoSave( 0 ); //disable -+ doc->insertProject( *project, 0, 0 ); -+ doc->getProject().setName( project->name() ); -+ doc->getProject().setLeader( project->leader() ); -+ doc->getProject().setDescription( project->description() ); -+ doc->saveNativeFormat( dir + url.fileName() ); -+ part->deleteLater(); // also deletes document - } else { - kDebug(planDbg())<<"Could not find a location"; - } -diff --git a/plan/libs/models/kptnodeitemmodel.cpp b/plan/libs/models/kptnodeitemmodel.cpp -index 834e45a..45b1650 100644 ---- a/plan/libs/models/kptnodeitemmodel.cpp -+++ b/plan/libs/models/kptnodeitemmodel.cpp -@@ -4990,7 +4990,11 @@ bool TaskModuleModel::importProject( const KUrl &url, bool emitsignal ) - stripProject( project ); - addTaskModule( project ); - if ( emitsignal ) { -- emit saveTaskModule( url, project ); -+ // FIXME: save modifies the project, so give it a copy (see kptview.cpp) -+ Project p; -+ status.setProject( &p ); -+ p.load( element, status ); -+ emit saveTaskModule( url, &p ); - } - } else { - kDebug(planDbg())<<"Failed to load project from:"<<url; --- -2.7.4 - diff --git a/source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch b/source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch deleted file mode 100644 index 75ec66b5..00000000 --- a/source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch +++ /dev/null @@ -1,452 +0,0 @@ -From b25d46bf9fa6d5b9ff34115edb4719592c191935 Mon Sep 17 00:00:00 2001 -From: Dag Andersen <danders@get2net.dk> -Date: Tue, 23 Aug 2016 08:01:58 +0200 -Subject: [PATCH 69/80] Backport: Plan: Avoid crash in special cases - -Sometimes (eg. when New is pressed) the Project can be deleted before models -and thus cause a crash. -Added a Project::aboutToBeDeleted signal so models can adjust. - -BUG: 346976 -FIXED_IN: 2.9.12 ---- - plan/libs/kernel/kptproject.cpp | 1 + - plan/libs/kernel/kptproject.h | 2 ++ - plan/libs/models/kptaccountsmodel.cpp | 2 ++ - plan/libs/models/kptcalendarmodel.cpp | 4 ++++ - plan/libs/models/kptitemmodelbase.cpp | 5 +++++ - plan/libs/models/kptitemmodelbase.h | 1 + - plan/libs/models/kptnodechartmodel.cpp | 2 ++ - plan/libs/models/kptnodeitemmodel.cpp | 4 ++++ - plan/libs/models/kptpertcpmmodel.cpp | 4 ++++ - plan/libs/models/kptrelationmodel.cpp | 2 ++ - plan/libs/models/kptresourceallocationmodel.cpp | 2 ++ - plan/libs/models/kptresourceappointmentsmodel.cpp | 8 ++++++++ - plan/libs/models/kptresourcemodel.cpp | 12 +++++++----- - plan/libs/models/kptschedulemodel.cpp | 13 +++++++++++++ - plan/libs/models/kptschedulemodel.h | 2 ++ - plan/libs/models/kpttaskstatusmodel.cpp | 2 ++ - 16 files changed, 61 insertions(+), 5 deletions(-) - -diff --git a/plan/libs/kernel/kptproject.cpp b/plan/libs/kernel/kptproject.cpp -index 158040b..451e897 100644 ---- a/plan/libs/kernel/kptproject.cpp -+++ b/plan/libs/kernel/kptproject.cpp -@@ -89,6 +89,7 @@ void Project::deref() - --m_refCount; - Q_ASSERT( m_refCount >= 0 ); - if ( m_refCount <= 0 ) { -+ emit aboutToBeDeleted(); - deleteLater(); - } - } -diff --git a/plan/libs/kernel/kptproject.h b/plan/libs/kernel/kptproject.h -index 1dbea7d..db18d36 100644 ---- a/plan/libs/kernel/kptproject.h -+++ b/plan/libs/kernel/kptproject.h -@@ -519,6 +519,8 @@ public Q_SLOTS: - void setMaxProgress( int max, ScheduleManager *sm = 0 ); - - Q_SIGNALS: -+ /// Emitted when the project is about to be deleted (The destroyed signal is disabled) -+ void aboutToBeDeleted(); - /// Emitted when anything in the project is changed (use with care) - void projectChanged(); - /// Emitted when the WBS code definition has changed. This may change all nodes. -diff --git a/plan/libs/models/kptaccountsmodel.cpp b/plan/libs/models/kptaccountsmodel.cpp -index 53f725a..4657979 100644 ---- a/plan/libs/models/kptaccountsmodel.cpp -+++ b/plan/libs/models/kptaccountsmodel.cpp -@@ -533,6 +533,7 @@ void CostBreakdownItemModel::setProject( Project *project ) - disconnect( acc, SIGNAL(accountRemoved(const Account*)), this, SLOT(slotAccountRemoved(const Account*)) ); - disconnect( acc, SIGNAL(accountToBeRemoved(const Account*)), this, SLOT(slotAccountToBeRemoved(const Account*)) ); - -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project , SIGNAL(nodeChanged(Node*)), this, SLOT(slotDataChanged()) ); - disconnect( m_project , SIGNAL(nodeAdded(Node*)), this, SLOT(slotDataChanged()) ); - disconnect( m_project , SIGNAL(nodeRemoved(Node*)), this, SLOT(slotDataChanged()) ); -@@ -553,6 +554,7 @@ void CostBreakdownItemModel::setProject( Project *project ) - connect( acc, SIGNAL(accountRemoved(const Account*)), this, SLOT(slotAccountRemoved(const Account*)) ); - connect( acc, SIGNAL(accountToBeRemoved(const Account*)), this, SLOT(slotAccountToBeRemoved(const Account*)) ); - -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project , SIGNAL(nodeChanged(Node*)), this, SLOT(slotDataChanged()) ); - connect( m_project , SIGNAL(nodeAdded(Node*)), this, SLOT(slotDataChanged()) ); - connect( m_project , SIGNAL(nodeRemoved(Node*)), this, SLOT(slotDataChanged()) ); -diff --git a/plan/libs/models/kptcalendarmodel.cpp b/plan/libs/models/kptcalendarmodel.cpp -index 6c0f017..401379c 100644 ---- a/plan/libs/models/kptcalendarmodel.cpp -+++ b/plan/libs/models/kptcalendarmodel.cpp -@@ -74,10 +74,12 @@ void CalendarDayItemModelBase::setProject( Project *project ) - { - setCalendar( 0 ); - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(calendarToBeRemoved(const Calendar*)), this, SLOT(slotCalendarToBeRemoved(const Calendar*)) ); - } - m_project = project; - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(calendarToBeRemoved(const Calendar*)), this, SLOT(slotCalendarToBeRemoved(const Calendar*)) ); - } - reset(); -@@ -136,6 +138,7 @@ void CalendarItemModel::slotCalendarRemoved( const Calendar * ) - void CalendarItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project , SIGNAL(calendarChanged(Calendar*)), this, SLOT(slotCalendarChanged(Calendar*)) ); - - disconnect( m_project, SIGNAL(calendarAdded(const Calendar*)), this, SLOT(slotCalendarInserted(const Calendar*)) ); -@@ -146,6 +149,7 @@ void CalendarItemModel::setProject( Project *project ) - } - m_project = project; - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(calendarChanged(Calendar*)), this, SLOT(slotCalendarChanged(Calendar*)) ); - - connect( m_project, SIGNAL(calendarAdded(const Calendar*)), this, SLOT(slotCalendarInserted(const Calendar*)) ); -diff --git a/plan/libs/models/kptitemmodelbase.cpp b/plan/libs/models/kptitemmodelbase.cpp -index 499fcfe..ff74394 100644 ---- a/plan/libs/models/kptitemmodelbase.cpp -+++ b/plan/libs/models/kptitemmodelbase.cpp -@@ -731,6 +731,11 @@ bool ItemModelBase::setData( const QModelIndex &index, const QVariant &value, in - return false; - } - -+void ItemModelBase::projectDeleted() -+{ -+ setProject(0); -+} -+ - } //namespace KPlato - - #include "kptitemmodelbase.moc" -diff --git a/plan/libs/models/kptitemmodelbase.h b/plan/libs/models/kptitemmodelbase.h -index 578c18e..5d3719d 100644 ---- a/plan/libs/models/kptitemmodelbase.h -+++ b/plan/libs/models/kptitemmodelbase.h -@@ -309,6 +309,7 @@ protected Q_SLOTS: - virtual void slotLayoutToBeChanged(); - virtual void slotLayoutChanged(); - -+ void projectDeleted(); - protected: - Project *m_project; - ScheduleManager *m_manager; -diff --git a/plan/libs/models/kptnodechartmodel.cpp b/plan/libs/models/kptnodechartmodel.cpp -index 025da86..9b8d397 100644 ---- a/plan/libs/models/kptnodechartmodel.cpp -+++ b/plan/libs/models/kptnodechartmodel.cpp -@@ -294,6 +294,7 @@ void ChartItemModel::setProject( Project *project ) - m_bcws.clear(); - m_acwp.clear(); - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(projectCalculated(ScheduleManager*)), this, SLOT(setScheduleManager(ScheduleManager*)) ); - disconnect( m_project, SIGNAL(nodeRemoved(Node*)), this, SLOT(slotNodeRemoved(Node*)) ); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -@@ -302,6 +303,7 @@ void ChartItemModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(projectCalculated(ScheduleManager*)), this, SLOT(setScheduleManager(ScheduleManager*)) ); - connect( m_project, SIGNAL(nodeRemoved(Node*)), this, SLOT(slotNodeRemoved(Node*)) ); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -diff --git a/plan/libs/models/kptnodeitemmodel.cpp b/plan/libs/models/kptnodeitemmodel.cpp -index 45b1650..e66277f 100644 ---- a/plan/libs/models/kptnodeitemmodel.cpp -+++ b/plan/libs/models/kptnodeitemmodel.cpp -@@ -3122,6 +3122,7 @@ void NodeItemModel::slotWbsDefinitionChanged() - void NodeItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - disconnect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) ); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -@@ -3139,6 +3140,7 @@ void NodeItemModel::setProject( Project *project ) - kDebug(planDbg())<<this<<m_project<<"->"<<project; - m_nodemodel.setProject( project ); - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - connect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) ); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -@@ -4381,6 +4383,7 @@ void MilestoneItemModel::slotNodeMoved( Node *node ) - void MilestoneItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - disconnect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) ); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -@@ -4397,6 +4400,7 @@ void MilestoneItemModel::setProject( Project *project ) - //kDebug(planDbg())<<m_project<<"->"<<project; - m_nodemodel.setProject( project ); - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - connect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) ); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -diff --git a/plan/libs/models/kptpertcpmmodel.cpp b/plan/libs/models/kptpertcpmmodel.cpp -index 71745ef..7340c61 100644 ---- a/plan/libs/models/kptpertcpmmodel.cpp -+++ b/plan/libs/models/kptpertcpmmodel.cpp -@@ -82,6 +82,7 @@ void CriticalPathItemModel::slotNodeRemoved( Node *node ) - void CriticalPathItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); - disconnect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) ); - disconnect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) ); -@@ -94,6 +95,7 @@ void CriticalPathItemModel::setProject( Project *project ) - m_project = project; - m_nodemodel.setProject( project ); - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); - connect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) ); - connect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) ); -@@ -354,6 +356,7 @@ void PertResultItemModel::setProject( Project *project ) - { - clear(); - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); - disconnect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) ); - disconnect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) ); -@@ -366,6 +369,7 @@ void PertResultItemModel::setProject( Project *project ) - m_project = project; - m_nodemodel.setProject( project ); - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); - connect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) ); - connect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) ); -diff --git a/plan/libs/models/kptrelationmodel.cpp b/plan/libs/models/kptrelationmodel.cpp -index b2617fb..a5acfb6 100644 ---- a/plan/libs/models/kptrelationmodel.cpp -+++ b/plan/libs/models/kptrelationmodel.cpp -@@ -241,6 +241,7 @@ void RelationItemModel::slotLayoutChanged() - void RelationItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); - disconnect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) ); - -@@ -254,6 +255,7 @@ void RelationItemModel::setProject( Project *project ) - } - m_project = project; - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); - connect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) ); - -diff --git a/plan/libs/models/kptresourceallocationmodel.cpp b/plan/libs/models/kptresourceallocationmodel.cpp -index 11f909e..500a24c 100644 ---- a/plan/libs/models/kptresourceallocationmodel.cpp -+++ b/plan/libs/models/kptresourceallocationmodel.cpp -@@ -425,6 +425,7 @@ void ResourceAllocationItemModel::slotResourceGroupRemoved( const ResourceGroup - void ResourceAllocationItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) ); - disconnect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) ); - -@@ -447,6 +448,7 @@ void ResourceAllocationItemModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) ); - connect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) ); - -diff --git a/plan/libs/models/kptresourceappointmentsmodel.cpp b/plan/libs/models/kptresourceappointmentsmodel.cpp -index b580dfe..f4700c6 100644 ---- a/plan/libs/models/kptresourceappointmentsmodel.cpp -+++ b/plan/libs/models/kptresourceappointmentsmodel.cpp -@@ -220,7 +220,10 @@ void ResourceAppointmentsItemModel::setProject( Project *project ) - { - kDebug(planDbg()); - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - disconnect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) ); -+ - disconnect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) ); - - disconnect( m_project, SIGNAL(resourceGroupToBeAdded(const ResourceGroup*,int)), this, SLOT(slotResourceGroupToBeInserted(const ResourceGroup*,int)) ); -@@ -255,6 +258,7 @@ void ResourceAppointmentsItemModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) ); - connect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) ); - -@@ -1351,6 +1355,8 @@ void ResourceAppointmentsRowModel::setProject( Project *project ) - { - //kDebug(planDbg())<<project; - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - disconnect( m_project, SIGNAL(resourceGroupToBeAdded(const ResourceGroup*,int)), this, SLOT(slotResourceGroupToBeInserted(const ResourceGroup*,int)) ); - - disconnect( m_project, SIGNAL(resourceGroupToBeRemoved(const ResourceGroup*)), this, SLOT(slotResourceGroupToBeRemoved(const ResourceGroup*)) ); -@@ -1379,6 +1385,8 @@ void ResourceAppointmentsRowModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - connect( m_project, SIGNAL(resourceGroupToBeAdded(const ResourceGroup*,int)), this, SLOT(slotResourceGroupToBeInserted(const ResourceGroup*,int)) ); - - connect( m_project, SIGNAL(resourceGroupToBeRemoved(const ResourceGroup*)), this, SLOT(slotResourceGroupToBeRemoved(const ResourceGroup*)) ); -diff --git a/plan/libs/models/kptresourcemodel.cpp b/plan/libs/models/kptresourcemodel.cpp -index 81f3493..23242df 100644 ---- a/plan/libs/models/kptresourcemodel.cpp -+++ b/plan/libs/models/kptresourcemodel.cpp -@@ -599,6 +599,7 @@ void ResourceItemModel::slotLayoutChanged() - void ResourceItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - disconnect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) ); - disconnect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) ); -@@ -623,6 +624,7 @@ void ResourceItemModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - connect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) ); - connect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) ); -@@ -711,7 +713,7 @@ QModelIndex ResourceItemModel::parent( const QModelIndex &index ) const - } - //kDebug(planDbg())<<index.internalPointer()<<":"<<index.row()<<","<<index.column(); - -- Resource *r = qobject_cast<Resource*>( object( index ) ); -+ Resource *r = resource( index ); - if ( r && r->parentGroup() ) { - // only resources have parent - int row = m_project->indexOf( r->parentGroup() ); -@@ -732,8 +734,7 @@ QModelIndex ResourceItemModel::index( int row, int column, const QModelIndex &pa - } - return QModelIndex(); - } -- QObject *p = object( parent ); -- ResourceGroup *g = qobject_cast<ResourceGroup*>( p ); -+ ResourceGroup *g = group( parent ); - if ( g ) { - if ( row < g->numResources() ) { - return createIndex( row, column, g->resourceAt( row ) ); -@@ -782,8 +783,7 @@ int ResourceItemModel::rowCount( const QModelIndex &parent ) const - if ( ! parent.isValid() ) { - return m_project->numResourceGroups(); - } -- QObject *p = object( parent ); -- ResourceGroup *g = qobject_cast<ResourceGroup*>( p ); -+ ResourceGroup *g = group( parent ); - if ( g ) { - return g->numResources(); - } -@@ -1148,6 +1148,8 @@ QObject *ResourceItemModel::object( const QModelIndex &index ) const - { - QObject *o = 0; - if ( index.isValid() ) { -+ Q_ASSERT( m_project ); -+ Q_ASSERT(m_project->resourceGroups().contains(static_cast<ResourceGroup*>(index.internalPointer())) || m_project->resourceList().contains(static_cast<Resource*>(index.internalPointer()))); - o = static_cast<QObject*>( index.internalPointer() ); - Q_ASSERT( o ); - } -diff --git a/plan/libs/models/kptschedulemodel.cpp b/plan/libs/models/kptschedulemodel.cpp -index e3ce298..4d47ee5 100644 ---- a/plan/libs/models/kptschedulemodel.cpp -+++ b/plan/libs/models/kptschedulemodel.cpp -@@ -171,6 +171,8 @@ void ScheduleItemModel::slotScheduleRemoved( const MainSchedule * ) - void ScheduleItemModel::setProject( Project *project ) - { - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - disconnect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) ); - - disconnect( m_project, SIGNAL(scheduleManagerToBeAdded(const ScheduleManager*,int)), this, SLOT(slotScheduleManagerToBeInserted(const ScheduleManager*,int)) ); -@@ -197,6 +199,8 @@ void ScheduleItemModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - connect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) ); - - connect( m_project, SIGNAL(scheduleManagerToBeAdded(const ScheduleManager*,int)), this, SLOT(slotScheduleManagerToBeInserted(const ScheduleManager*,int)) ); -@@ -1074,10 +1078,17 @@ void ScheduleLogItemModel::slotScheduleRemoved( const MainSchedule *sch ) - kDebug(planDbg())<<m_schedule<<sch; - } - -+void ScheduleLogItemModel::projectDeleted() -+{ -+ setProject(0); -+} -+ - void ScheduleLogItemModel::setProject( Project *project ) - { - kDebug(planDbg())<<m_project<<"->"<<project; - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - disconnect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) ); - - disconnect( m_project, SIGNAL(scheduleManagerToBeRemoved(const ScheduleManager*)), this, SLOT(slotScheduleManagerToBeRemoved(const ScheduleManager*)) ); -@@ -1096,6 +1107,8 @@ void ScheduleLogItemModel::setProject( Project *project ) - } - m_project = project; - if ( m_project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); -+ - connect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) ); - - connect( m_project, SIGNAL(scheduleManagerToBeRemoved(const ScheduleManager*)), this, SLOT(slotScheduleManagerToBeRemoved(const ScheduleManager*)) ); -diff --git a/plan/libs/models/kptschedulemodel.h b/plan/libs/models/kptschedulemodel.h -index c09d8fb..acc75b4 100644 ---- a/plan/libs/models/kptschedulemodel.h -+++ b/plan/libs/models/kptschedulemodel.h -@@ -203,6 +203,8 @@ protected Q_SLOTS: - - void slotLogInserted( MainSchedule*, int firstrow, int lastrow ); - -+ void projectDeleted(); -+ - protected: - void addLogEntry( const Schedule::Log &log, int row ); - -diff --git a/plan/libs/models/kpttaskstatusmodel.cpp b/plan/libs/models/kpttaskstatusmodel.cpp -index e0693b8..9fb3b37 100644 ---- a/plan/libs/models/kpttaskstatusmodel.cpp -+++ b/plan/libs/models/kpttaskstatusmodel.cpp -@@ -126,6 +126,7 @@ void TaskStatusItemModel::setProject( Project *project ) - { - clear(); - if ( m_project ) { -+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - disconnect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) ); - disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); -@@ -140,6 +141,7 @@ void TaskStatusItemModel::setProject( Project *project ) - m_project = project; - m_nodemodel.setProject( project ); - if ( project ) { -+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted())); - connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) ); - connect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) ); - connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) ); --- -2.7.4 - diff --git a/source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch b/source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch deleted file mode 100644 index debb62b7..00000000 --- a/source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch +++ /dev/null @@ -1,50 +0,0 @@ -From a9134500e4e599ba316617941bcd04f640ed3999 Mon Sep 17 00:00:00 2001 -From: Dag Andersen <danders@get2net.dk> -Date: Tue, 23 Aug 2016 13:30:13 +0200 -Subject: [PATCH 70/80] Plan: Guard against trying to move a task into the same - porition - -QAbstractItemModel cannot handle this and it causes a crash (later) ---- - plan/libs/kernel/kptproject.cpp | 4 ++++ - plan/libs/models/kptnodeitemmodel.cpp | 9 +++++++++ - 2 files changed, 13 insertions(+) - -diff --git a/plan/libs/kernel/kptproject.cpp b/plan/libs/kernel/kptproject.cpp -index 451e897..fdf43bc 100644 ---- a/plan/libs/kernel/kptproject.cpp -+++ b/plan/libs/kernel/kptproject.cpp -@@ -1565,6 +1565,10 @@ bool Project::moveTask( Node* node, Node *newParent, int newPos ) - Node *oldParent = node->parentNode(); - int oldPos = oldParent->indexOf( node ); - int i = newPos < 0 ? newParent->numChildren() : newPos; -+ if ( oldParent == newParent && i == oldPos ) { -+ // no need to move to where it already is -+ return false; -+ } - int newRow = i; - if ( oldParent == newParent && newPos > oldPos ) { - ++newRow; // itemmodels wants new row *before* node is removed from old position -diff --git a/plan/libs/models/kptnodeitemmodel.cpp b/plan/libs/models/kptnodeitemmodel.cpp -index e66277f..5581f8f 100644 ---- a/plan/libs/models/kptnodeitemmodel.cpp -+++ b/plan/libs/models/kptnodeitemmodel.cpp -@@ -4036,6 +4036,15 @@ bool NodeItemModel::dropMimeData( const QMimeData *data, Qt::DropAction action, - if ( pos >= 0 && n->parentNode() == par && par->indexOf( n ) < pos ) { - --pos; - } -+ if ( n->parentNode() == par ) { -+ // avoid drop into the same position, QAbstractItemModel does not like it -+ int crow = par->indexOf( n ); -+ if ( ( ( pos == -1 ) && ( crow == par->numChildren() - 1 ) ) || ( pos == crow ) ) { -+ delete cmd; -+ cmd = 0; -+ continue; -+ } -+ } - cmd->addCommand( new NodeMoveCmd( m_project, n, par, pos ) ); - offset++; - } --- -2.7.4 - diff --git a/source/kde/patch/calligra/boost-1.65.0.patch b/source/kde/patch/calligra/boost-1.65.0.patch deleted file mode 100644 index 9f6a4066..00000000 --- a/source/kde/patch/calligra/boost-1.65.0.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -ru calligra-2.9.11.orig/gemini/desktopviewproxy.cpp calligra-2.9.11/gemini/desktopviewproxy.cpp ---- calligra-2.9.11.orig/gemini/desktopviewproxy.cpp 2016-02-02 20:53:13.000000000 +0100 -+++ calligra-2.9.11/gemini/desktopviewproxy.cpp 2017-08-27 17:54:48.900376022 +0200 -@@ -31,7 +31,7 @@ - #include <krecentfilesaction.h> - #include <kactioncollection.h> - --#include <boost/config/posix_features.hpp> -+#include <boost/config/detail/posix_features.hpp> - #include <KConfigGroup> - - #include <KoMainWindow.h> -diff -ru calligra-2.9.11.orig/krita/gemini/desktopviewproxy.cpp calligra-2.9.11/krita/gemini/desktopviewproxy.cpp ---- calligra-2.9.11.orig/krita/gemini/desktopviewproxy.cpp 2016-02-02 20:53:14.000000000 +0100 -+++ calligra-2.9.11/krita/gemini/desktopviewproxy.cpp 2017-08-27 17:53:54.964372389 +0200 -@@ -31,7 +31,7 @@ - #include <krecentfilesaction.h> - #include <kactioncollection.h> - --#include <boost/config/posix_features.hpp> -+#include <boost/config/detail/posix_features.hpp> - - #include <KisMainWindow.h> - #include <KisImportExportManager.h> diff --git a/source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch b/source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch deleted file mode 100644 index 2b1271c0..00000000 --- a/source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up calligra-2.9.11/libs/flake/KoSnapStrategy.cpp.gcc6_arm calligra-2.9.11/libs/flake/KoSnapStrategy.cpp ---- calligra-2.9.11/libs/flake/KoSnapStrategy.cpp.gcc6_arm 2016-02-02 13:53:15.000000000 -0600 -+++ calligra-2.9.11/libs/flake/KoSnapStrategy.cpp 2016-02-08 09:12:39.452896965 -0600 -@@ -181,7 +181,7 @@ bool ExtensionSnapStrategy::snap(const Q - Q_ASSERT(isfinite(maxSnapDistance)); - - const qreal maxDistance = maxSnapDistance * maxSnapDistance; -- qreal minDistances[2] = { HUGE_VAL, HUGE_VAL }; -+ qreal minDistances[2] = { (qreal)HUGE_VAL, (qreal)HUGE_VAL }; - - QPointF snappedPoints[2] = { mousePosition, mousePosition }; - QPointF startPoints[2]; diff --git a/source/kde/patch/calligra/calligra.mariadb.diff b/source/kde/patch/calligra/calligra.mariadb.diff deleted file mode 100644 index 96006998..00000000 --- a/source/kde/patch/calligra/calligra.mariadb.diff +++ /dev/null @@ -1,33 +0,0 @@ ---- ./kexi/migration/mysql/mysqlmigrate.cpp.orig 2016-02-02 13:53:13.000000000 -0600 -+++ ./kexi/migration/mysql/mysqlmigrate.cpp 2017-08-30 14:21:01.436709371 -0500 -@@ -42,7 +42,7 @@ - #ifdef Q_WS_WIN - # undef _WIN32_WINNT // avoid redef. - #endif --#include <mysql_version.h> -+#include <mariadb_version.h> - #include <mysql.h> - #define BOOL bool - ---- ./kexi/kexidb/drivers/mysql/mysqldriver.cpp.orig 2016-02-02 13:53:13.000000000 -0600 -+++ ./kexi/kexidb/drivers/mysql/mysqldriver.cpp 2017-08-30 14:20:24.858710150 -0500 -@@ -31,7 +31,7 @@ - #include <QVariant> - #include <QFile> - --#include <mysql_version.h> -+#include <mariadb_version.h> - #include <mysql.h> - #define BOOL bool - ---- ./kexi/kexidb/drivers/mysql/mysqlconnection_p.h.orig 2016-02-02 13:53:13.000000000 -0600 -+++ ./kexi/kexidb/drivers/mysql/mysqlconnection_p.h 2017-08-30 14:20:24.861710150 -0500 -@@ -30,7 +30,7 @@ - # endif - # include <my_global.h> - #endif --#include <mysql_version.h> -+#include <mariadb_version.h> - #include <mysql.h> - - typedef struct st_mysql MYSQL; diff --git a/source/kde/patch/k3b.patch b/source/kde/patch/k3b.patch deleted file mode 100644 index a96caa49..00000000 --- a/source/kde/patch/k3b.patch +++ /dev/null @@ -1,9 +0,0 @@ -# Patch for GCC 6+: -zcat $CWD/patch/k3b/k3b.narrowing.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Patch for ffmpeg3: -zcat $CWD/patch/k3b/k3b-ffmpeg3.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Fix error "ISO C++ forbids comparison between pointer and integer [-fpermissive]": -zcat $CWD/patch/k3b/k3b.pointer.compare.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/k3b/k3b-ffmpeg3.patch b/source/kde/patch/k3b/k3b-ffmpeg3.patch deleted file mode 100644 index 9c5ac420..00000000 --- a/source/kde/patch/k3b/k3b-ffmpeg3.patch +++ /dev/null @@ -1,138 +0,0 @@ -From 52d3d64863d2fab4128f524870851f18f5cae1fc Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Old=C5=99ich=20Jedli=C4=8Dka?= <oldium.pro@seznam.cz> -Date: Sat, 14 Feb 2015 15:31:07 +0100 -Subject: [PATCH] Fixed compilation with newer ffmpeg/libav. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Oldřich Jedlička <oldium.pro@seznam.cz> ---- - plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp | 60 ++++++++++++++++++++++++----- - 1 file changed, 50 insertions(+), 10 deletions(-) - -diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp -index 5451fd3..2f80fd6 100644 ---- a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp -+++ b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp -@@ -86,8 +86,12 @@ public: - K3b::Msf length; - - // for decoding. ffmpeg requires 16-byte alignment. -+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4 -+ ::AVFrame* frame; -+#else - char outputBuffer[AVCODEC_MAX_AUDIO_FRAME_SIZE + 15]; - char* alignedOutputBuffer; -+#endif - char* outputBufferPos; - int outputBufferSize; - ::AVPacket packet; -@@ -102,14 +106,29 @@ K3bFFMpegFile::K3bFFMpegFile( const QString& filename ) - d = new Private; - d->formatContext = 0; - d->codec = 0; -+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4 -+# if LIBAVCODEC_BUILD < AV_VERSION_INT(55,28,1) -+ d->frame = avcodec_alloc_frame(); -+# else -+ d->frame = av_frame_alloc(); -+# endif -+#else - int offset = 0x10 - (reinterpret_cast<intptr_t>(&d->outputBuffer) & 0xf); - d->alignedOutputBuffer = &d->outputBuffer[offset]; -+#endif - } - - - K3bFFMpegFile::~K3bFFMpegFile() - { - close(); -+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4 -+# if LIBAVCODEC_BUILD < AV_VERSION_INT(55,28,1) -+ av_free(d->frame); -+# else -+ av_frame_free(&d->frame); -+# endif -+#endif - delete d; - } - -@@ -326,26 +345,36 @@ int K3bFFMpegFile::fillOutputBuffer() - return 0; - } - -+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4 -+ int gotFrame = 0; -+ int len = ::avcodec_decode_audio4( -+#else - d->outputBufferPos = d->alignedOutputBuffer; - d->outputBufferSize = AVCODEC_MAX_AUDIO_FRAME_SIZE; -- --#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3 -+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3 - int len = ::avcodec_decode_audio3( --#else --# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO2 -- int len = ::avcodec_decode_audio2( - # else -+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO2 -+ int len = ::avcodec_decode_audio2( -+# else - int len = ::avcodec_decode_audio( -+# endif - # endif - #endif - - FFMPEG_CODEC(d->formatContext->streams[0]), -+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4 -+ d->frame, -+ &gotFrame, -+ &d->packet ); -+#else - (short*)d->alignedOutputBuffer, - &d->outputBufferSize, --#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3 -+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3 - &d->packet ); --#else -+# else - d->packetData, d->packetSize ); -+# endif - #endif - - if( d->packetSize <= 0 || len < 0 ) -@@ -355,6 +384,17 @@ int K3bFFMpegFile::fillOutputBuffer() - return -1; - } - -+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4 -+ if ( gotFrame ) { -+ d->outputBufferSize = ::av_samples_get_buffer_size( -+ NULL, -+ FFMPEG_CODEC(d->formatContext->streams[0])->channels, -+ d->frame->nb_samples, -+ FFMPEG_CODEC(d->formatContext->streams[0])->sample_fmt, -+ 1 ); -+ d->outputBufferPos = reinterpret_cast<char*>( d->frame->data[0] ); -+ } -+#endif - d->packetSize -= len; - d->packetData += len; - } -@@ -420,9 +460,9 @@ K3bFFMpegFile* K3bFFMpegWrapper::open( const QString& filename ) const - // mp3 being one of them sadly. Most importantly: allow the libsndfile decoder to do - // its thing. - // -- if( file->type() == CODEC_ID_WMAV1 || -- file->type() == CODEC_ID_WMAV2 || -- file->type() == CODEC_ID_AAC ) -+ if( file->type() == AV_CODEC_ID_WMAV1 || -+ file->type() == AV_CODEC_ID_WMAV2 || -+ file->type() == AV_CODEC_ID_AAC ) - #endif - return file; - } --- -2.0.5 - diff --git a/source/kde/patch/k3b/k3b.narrowing.diff b/source/kde/patch/k3b/k3b.narrowing.diff deleted file mode 100644 index 7a328394..00000000 --- a/source/kde/patch/k3b/k3b.narrowing.diff +++ /dev/null @@ -1,71 +0,0 @@ ---- k3b-2.0.3/libk3b/tools/k3bwavefilewriter.cpp.old 2016-05-14 12:33:15.000000000 -0400 -+++ k3b-2.0.3/libk3b/tools/k3bwavefilewriter.cpp 2016-05-14 12:34:35.218389226 -0400 -@@ -111,17 +111,17 @@ - { - static const char riffHeader[] = - { -- 0x52, 0x49, 0x46, 0x46, // 0 "RIFF" -- 0x00, 0x00, 0x00, 0x00, // 4 wavSize -- 0x57, 0x41, 0x56, 0x45, // 8 "WAVE" -- 0x66, 0x6d, 0x74, 0x20, // 12 "fmt " -- 0x10, 0x00, 0x00, 0x00, // 16 -- 0x01, 0x00, 0x02, 0x00, // 20 -- 0x44, 0xac, 0x00, 0x00, // 24 -- 0x10, 0xb1, 0x02, 0x00, // 28 -- 0x04, 0x00, 0x10, 0x00, // 32 -- 0x64, 0x61, 0x74, 0x61, // 36 "data" -- 0x00, 0x00, 0x00, 0x00 // 40 byteCount -+ (char)0x52, (char)0x49, (char)0x46, (char)0x46, // 0 "RIFF" -+ (char)0x00, (char)0x00, (char)0x00, (char)0x00, // 4 wavSize -+ (char)0x57, (char)0x41, (char)0x56, (char)0x45, // 8 "WAVE" -+ (char)0x66, (char)0x6d, (char)0x74, (char)0x20, // 12 "fmt " -+ (char)0x10, (char)0x00, (char)0x00, (char)0x00, // 16 -+ (char)0x01, (char)0x00, (char)0x02, (char)0x00, // 20 -+ (char)0x44, (char)0xac, (char)0x00, (char)0x00, // 24 -+ (char)0x10, (char)0xb1, (char)0x02, (char)0x00, // 28 -+ (char)0x04, (char)0x00, (char)0x10, (char)0x00, // 32 -+ (char)0x64, (char)0x61, (char)0x74, (char)0x61, // 36 "data" -+ (char)0x00, (char)0x00, (char)0x00, (char)0x00 // 40 byteCount - }; - - m_outputStream.writeRawData( riffHeader, 44 ); ---- k3b-2.0.3/libk3b/projects/k3bcdrdaowriter.cpp.old 2014-11-04 13:37:31.000000000 -0500 -+++ k3b-2.0.3/libk3b/projects/k3bcdrdaowriter.cpp 2016-05-14 12:41:13.769135417 -0400 -@@ -908,7 +908,7 @@ - - void K3b::CdrdaoWriter::parseCdrdaoMessage() - { -- static const char msgSync[] = { 0xff, 0x00, 0xff, 0x00 }; -+ static const char msgSync[] = { (char)0xff, (char)0x00, (char)0xff, (char)0x00 }; - unsigned int avail = m_comSock->bytesAvailable(); - unsigned int msgs = avail / ( sizeof(msgSync)+d->progressMsgSize ); - unsigned int count = 0; ---- k3b-2.0.3/plugins/encoder/external/k3bexternalencoder.cpp.old 2014-11-04 13:37:31.000000000 -0500 -+++ k3b-2.0.3/plugins/encoder/external/k3bexternalencoder.cpp 2016-05-14 12:45:57.967902413 -0400 -@@ -39,17 +39,17 @@ - - static const char s_riffHeader[] = - { -- 0x52, 0x49, 0x46, 0x46, // 0 "RIFF" -- 0x00, 0x00, 0x00, 0x00, // 4 wavSize -- 0x57, 0x41, 0x56, 0x45, // 8 "WAVE" -- 0x66, 0x6d, 0x74, 0x20, // 12 "fmt " -- 0x10, 0x00, 0x00, 0x00, // 16 -- 0x01, 0x00, 0x02, 0x00, // 20 -- 0x44, 0xac, 0x00, 0x00, // 24 -- 0x10, 0xb1, 0x02, 0x00, // 28 -- 0x04, 0x00, 0x10, 0x00, // 32 -- 0x64, 0x61, 0x74, 0x61, // 36 "data" -- 0x00, 0x00, 0x00, 0x00 // 40 byteCount -+ (char)0x52, (char)0x49, (char)0x46, (char)0x46, // 0 "RIFF" -+ (char)0x00, (char)0x00, (char)0x00, (char)0x00, // 4 wavSize -+ (char)0x57, (char)0x41, (char)0x56, (char)0x45, // 8 "WAVE" -+ (char)0x66, (char)0x6d, (char)0x74, (char)0x20, // 12 "fmt " -+ (char)0x10, (char)0x00, (char)0x00, (char)0x00, // 16 -+ (char)0x01, (char)0x00, (char)0x02, (char)0x00, // 20 -+ (char)0x44, (char)0xac, (char)0x00, (char)0x00, // 24 -+ (char)0x10, (char)0xb1, (char)0x02, (char)0x00, // 28 -+ (char)0x04, (char)0x00, (char)0x10, (char)0x00, // 32 -+ (char)0x64, (char)0x61, (char)0x74, (char)0x61, // 36 "data" -+ (char)0x00, (char)0x00, (char)0x00, (char)0x00 // 40 byteCount - }; diff --git a/source/kde/patch/k3b/k3b.pointer.compare.diff b/source/kde/patch/k3b/k3b.pointer.compare.diff deleted file mode 100644 index 590fce7a..00000000 --- a/source/kde/patch/k3b/k3b.pointer.compare.diff +++ /dev/null @@ -1,29 +0,0 @@ ---- ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.orig 2017-05-06 16:40:46.273796232 -0500 -+++ ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp 2017-05-06 16:47:19.594787855 -0500 -@@ -261,7 +261,7 @@ - AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "TITLE", NULL, 0 ); - if( ade == NULL ) - return QString(); -- if( ade->value != '\0' ) -+ if( ade->value ) - return QString::fromLocal8Bit( ade->value ); - else - return QString(); -@@ -274,7 +274,7 @@ - AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "ARTIST", NULL, 0 ); - if( ade == NULL ) - return QString(); -- if( ade->value != '\0' ) -+ if( ade->value ) - return QString::fromLocal8Bit( ade->value ); - else - return QString(); -@@ -287,7 +287,7 @@ - AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "COMMENT", NULL, 0 ); - if( ade == NULL ) - return QString(); -- if( ade->value != '\0' ) -+ if( ade->value ) - return QString::fromLocal8Bit( ade->value ); - else - return QString(); diff --git a/source/kde/patch/kate.patch b/source/kde/patch/kate.patch deleted file mode 100644 index 4810b315..00000000 --- a/source/kde/patch/kate.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix build for gcc6+: -zcat $CWD/patch/kate/kate4-fix_gcc7.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kate/kate4-fix_gcc7.patch b/source/kde/patch/kate/kate4-fix_gcc7.patch deleted file mode 100644 index 080a114f..00000000 --- a/source/kde/patch/kate/kate4-fix_gcc7.patch +++ /dev/null @@ -1,54 +0,0 @@ ---- a/part/search/kateregexp.cpp -+++ b/part/search/kateregexp.cpp -@@ -96,7 +96,7 @@ - - case L'n': - stillMultiLine = true; -- // FALLTROUGH -+ __attribute__((fallthrough)); - - default: - // copy "\?" unmodified -@@ -164,7 +164,7 @@ - - case L'n': - stillMultiLine = true; -- // FALLTROUGH -+ __attribute__((fallthrough)); - - default: - // copy "\?" unmodified ---- a/part/view/kateview.cpp -+++ b/part/view/kateview.cpp -@@ -310,7 +310,7 @@ - if (factory()) - factory()->removeClient (this); - -- KTextEditor::ViewBarContainer *viewBarContainer=qobject_cast<KTextEditor::ViewBarContainer*>( KateGlobal::self()->container() ); -+ KTextEditor::ViewBarContainer *viewBarContainer=qobject_cast<KTextEditor::ViewBarContainer*>( KateGlobal::self()->container() ); - if (viewBarContainer) { - viewBarContainer->deleteViewBarForView(this,KTextEditor::ViewBarContainer::BottomBar); - m_bottomViewBar=0; ---- a/part/view/kateviewaccessible.h -+++ b/part/view/kateviewaccessible.h -@@ -248,7 +248,8 @@ - - virtual int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const - { -- if ((relation == QAccessible::Child || QAccessible::FocusChild) && entry == KateCursorAccessible::ChildId) { -+ if ((relation == QAccessible::Child || relation == QAccessible::FocusChild) && -+ entry == KateCursorAccessible::ChildId) { - *target = new KateCursorAccessible(view()); - return KateCursorAccessible::ChildId; - } ---- a/part/view/kateviewhelpers.cpp -+++ b/part/view/kateviewhelpers.cpp -@@ -1703,7 +1703,7 @@ - if (realLine > -1) { - if (m_viewInternal->cache()->viewLine(z).startCol() == 0) { - if (m_viRelLineNumbersOn && m_view->viInputMode()) { -- int diff = abs(realLine - currentLine); -+ int diff = abs(static_cast<int>(realLine - currentLine)); - if (diff > 0) { - p.drawText( lnX + m_maxCharWidth / 2, y, lnWidth - m_maxCharWidth, h, - Qt::TextDontClip|Qt::AlignRight|Qt::AlignVCenter, QString("%1").arg(diff) ); diff --git a/source/kde/patch/kde-runtime.patch b/source/kde/patch/kde-runtime.patch deleted file mode 100644 index 3cdd393c..00000000 --- a/source/kde/patch/kde-runtime.patch +++ /dev/null @@ -1,3 +0,0 @@ -zcat $CWD/patch/kde-runtime/kde-runtime-4.14.3.nm.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff b/source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff deleted file mode 100644 index 8bcdb8db..00000000 --- a/source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- ./solid-networkstatus/kded/CMakeLists.txt.orig 2014-10-30 18:50:20.000000000 -0500 -+++ ./solid-networkstatus/kded/CMakeLists.txt 2015-10-24 00:10:47.043649546 -0500 -@@ -21,6 +21,7 @@ - MESSAGE(STATUS "Adding in-process NetworkManager service-wart to kded module") - set(kded_networkstatus_PART_SRCS ${kded_networkstatus_PART_SRCS} networkmanagerstatus.cpp) - include_directories(${NETWORKMANAGER_INCLUDE_DIRS}) -+ include_directories(${NM-UTIL_INCLUDE_DIRS}) - add_definitions(-DNM_BACKEND_ENABLED) - endif(NM_0_7) - endif(NETWORKMANAGER_FOUND) diff --git a/source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff b/source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff deleted file mode 100644 index 0f9ae9a2..00000000 --- a/source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff +++ /dev/null @@ -1,20 +0,0 @@ ---- ./kioslave/info/kde-info2html.orig 2014-10-31 00:50:20.000000000 +0100 -+++ ./kioslave/info/kde-info2html 2018-11-01 18:30:29.718723253 +0100 -@@ -172,7 +172,7 @@ - next if $looking && !/\* Menu/; - $looking = 0; - my @item = &ParseMenuItem($_,'dir'); -- if (!defined(@item)) { next } -+ if (!@item) { next } - my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) = @item; - if ($MenuLinkRef eq $FileName) { - &Redirect($MenuLinkFile, $MenuLinkTag); -@@ -430,7 +430,7 @@ - sub MenuItem2HTML { - my ($Line, $BaseInfoFile) = @_; - my @parse_results = &ParseMenuItem($Line, $BaseInfoFile); -- if (!defined (@parse_results)) { return $Line; } -+ if (!@parse_results) { return $Line; } - my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) = @parse_results; - #-- produce a HTML line - return "<tr class=\"infomenutr\"><td class=\"infomenutd\" style=\"width:30%\"><ul><li><a href=\"info:/$MenuLinkFile/$MenuLinkTag\">$MenuLinkRef</a></ul></td><td class=\"infomenutd\">$MenuLinkText"; diff --git a/source/kde/patch/kde-workspace.patch b/source/kde/patch/kde-workspace.patch deleted file mode 100644 index 5c52a3dc..00000000 --- a/source/kde/patch/kde-workspace.patch +++ /dev/null @@ -1,8 +0,0 @@ -# Increase the timeout to accomodate slow-to-initialize video chipset drivers: -zcat $CWD/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Always show 'remaining time' in the popup of the battery plasmoid: -zcat $CWD/patch/kde-workspace/kde-workspace.batteryapplet.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Fix issues with default panel. Offer launchers for Dolphin, Konqueror, Firefox, and Konsole. -zcat $CWD/patch/kde-workspace/kde-workspace.panel-layout.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff b/source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff deleted file mode 100644 index 79582780..00000000 --- a/source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff -ur kde-workspace-4.8.80/plasma/generic/applets/batterymonitor/contents/config/main.xml kde-workspace-4.8.80-battery-plasmoid-showremainingtime/plasma/generic/applets/batterymonitor/contents/config/main.xml ---- kde-workspace-4.8.80/plasma/generic/applets/batterymonitor/contents/config/main.xml 2012-05-23 01:55:18.000000000 +0200 -+++ kde-workspace-4.8.80-battery-plasmoid-showremainingtime/plasma/generic/applets/batterymonitor/contents/config/main.xml 2012-05-26 22:09:44.000000000 +0200 -@@ -10,7 +10,7 @@ - <default>false</default> - </entry> - <entry name="showRemainingTime" type="Bool"> -- <default>false</default> -+ <default>true</default> - </entry> - </group> - - diff --git a/source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff b/source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff deleted file mode 100644 index 4dd98484..00000000 --- a/source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff +++ /dev/null @@ -1,14 +0,0 @@ ---- ./kdm/config.def.orig 2010-09-30 16:20:21.000000000 -0500 -+++ ./kdm/config.def 2010-12-01 19:13:02.356002453 -0600 -@@ -1343,9 +1343,9 @@ - - Key: ServerTimeout - Type: int --Default: 30 -+Default: 45 - User: core --Instance: #:*/ -+Instance: :*/ - Comment: - How long to wait for a local &X-Server; to come up. - Description: diff --git a/source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff b/source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff deleted file mode 100644 index 9efa7d5e..00000000 --- a/source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff +++ /dev/null @@ -1,23 +0,0 @@ ---- ./plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.defaultPanel/contents/layout.js.orig 2015-08-12 02:03:15.000000000 -0500 -+++ ./plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.defaultPanel/contents/layout.js 2016-06-23 17:28:48.715969102 -0500 -@@ -28,6 +28,10 @@ - panel.height = screenGeometry(panel.screen).height > 1024 ? 35 : 27 - panel.addWidget("launcher") - panel.addWidget("org.kde.showActivityManager") -+dolphin = panel.addWidget("quicklaunch") -+konqbrowser = panel.addWidget("quicklaunch") -+firefox = panel.addWidget("quicklaunch") -+konsole = panel.addWidget("quicklaunch") - pager = panel.addWidget("pager") - pager.writeConfig("hideWhenSingleDesktop", "true") - tasks = panel.addWidget("tasks") -@@ -35,5 +39,7 @@ - panel.addWidget("digital-clock") - - tasks.currentConfigGroup = new Array("Launchers") --tasks.writeConfig("browser", "preferred://browser, , , ") --tasks.writeConfig("filemanager", "preferred://filemanager, , , ") -+dolphin.writeConfig("iconUrls","file:////usr/share/applications/kde4/dolphin.desktop") -+konqbrowser.writeConfig("iconUrls","file:////usr/share/applications/kde4/konqbrowser.desktop") -+firefox.writeConfig("iconUrls","file:///usr/share/applications/mozilla-firefox.desktop") -+konsole.writeConfig("iconUrls","file:///usr/share/applications/kde4/konsole.desktop") diff --git a/source/kde/patch/kdeartwork.patch b/source/kde/patch/kdeartwork.patch deleted file mode 100644 index c5ed525d..00000000 --- a/source/kde/patch/kdeartwork.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix build: -zcat $CWD/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff b/source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff deleted file mode 100644 index c265f5f0..00000000 --- a/source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff +++ /dev/null @@ -1,7 +0,0 @@ ---- ./kscreensaver/xsavers/CMakeLists.txt.orig 2010-03-05 12:35:01.000000000 -0600 -+++ ./kscreensaver/xsavers/CMakeLists.txt 2018-01-30 13:59:36.413760135 -0600 -@@ -1,3 +1,4 @@ -+include(CheckIncludeFiles) - check_include_files(memory.h HAVE_MEMORY_H) - configure_file (config-xsavers.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-xsavers.h ) - diff --git a/source/kde/patch/kdeconnect-kde.patch b/source/kde/patch/kdeconnect-kde.patch deleted file mode 100644 index a08b5aa0..00000000 --- a/source/kde/patch/kdeconnect-kde.patch +++ /dev/null @@ -1,2 +0,0 @@ -zcat $CWD/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff b/source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff deleted file mode 100644 index 1189c2e5..00000000 --- a/source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff +++ /dev/null @@ -1,21 +0,0 @@ ---- ./plugins/sftp/mounter.cpp.orig 2015-02-03 20:53:33.000000000 -0600 -+++ ./plugins/sftp/mounter.cpp 2015-11-19 17:22:51.795962646 -0600 -@@ -136,7 +136,8 @@ - << "-f" - << "-o" << "IdentityFile=" + m_sftp->device()->privateKeyPath() - << "-o" << "StrictHostKeyChecking=no" //Do not ask for confirmation because it is not a known host -- << "-o" << "UserKnownHostsFile=/dev/null"; //Prevent storing as a known host -+ << "-o" << "UserKnownHostsFile=/dev/null" //Prevent storing as a known host -+ << "-o" << "HostKeyAlgorithms=+ssh-dss"; //https://bugs.kde.org/show_bug.cgi?id=351725 - - m_proc->setProgram(program, arguments); - -@@ -146,7 +147,7 @@ - - cleanMountPoint(); - -- kDebug(debugArea()) << "Staring process: " << m_proc->program().join(" "); -+ kDebug(debugArea()) << "Starting process: " << m_proc->program().join(" "); - m_proc->start(); - } - diff --git a/source/kde/patch/kdelibs.patch b/source/kde/patch/kdelibs.patch deleted file mode 100644 index f102b8a3..00000000 --- a/source/kde/patch/kdelibs.patch +++ /dev/null @@ -1,22 +0,0 @@ -# Slackware ships a different version of XML DTDs: -zcat $CWD/patch/kdelibs/kdelibs.docbook.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Make uPnP support depend on the environment variable SOLID_UPNP, -# e.g. by creating an /etc/profile.d/upnp.sh file with the following contents: -# export SOLID_UPNP=1 -zcat $CWD/patch/kdelibs/kdelibs.upnp_conditional.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Revert 3 patches which (although they probably follow the FDo spec better), -# cause incorrect icon overrides: -zcat $CWD/patch/kdelibs/return-not-break.-copy-paste-error.patch.gz | patch -R -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/kdelibs/coding-style-fixes.patch.gz | patch -R -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/kdelibs/return-application-icons-properly.patch.gz | patch -R -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Support OpenSSL-1.1.x: -zcat $CWD/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Security: remove support for $(...) in config keys with [$e] marker. (CVE-2019-14744) -zcat $CWD/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Support TLS v1.1 and TLS v1.2: -zcat $CWD/patch/kdelibs/kde4libs-4.14.26.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch b/source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch deleted file mode 100644 index 69474edd..00000000 --- a/source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch +++ /dev/null @@ -1,1000 +0,0 @@ -From a015996bb55bbd63d94b227a2c82d0d97cd86ae8 Mon Sep 17 00:00:00 2001 -From: Wolfgang Bauer <wbauer@tmo.at> -Date: Wed, 25 Oct 2017 07:49:32 +0200 -Subject: [PATCH] Make kssl compile against OpenSSL 1.1.0 - -OpenSSL 1.1.0 contains some source-incompatible changes, most notably -making most of the structures opaque and introducing new getter/setter -functions to modify the structures. This patch adds some of the newly -introduced functions to the KOpenSSL class and modifies the code to -call them. The implementation of those newly introduced methods -contains both OpenSSL < 1.1 compatible code (direct structure member -access) and calls to real functions resolved from OpenSSL>= 1.1 -library. Which implementation is used is decided at compile time. Some -of the existing methods were renamed to match the OpenSSL 1.1 naming -and to avoid conflicts with backward-compatibility names provided by -OpenSSL 1.1. - -KSSLCertificate::toNetscape() returns empty result when built against -OpenSSL 1.1 since I wasn't able to find a proper equivalent in OpenSSL -1.1 API (and there does not seem to be any). - -(Backport of commit 9a990c69c606126bcd60cd7718462aec2a92460d from -kdelibs4support) ---- - kio/kssl/kopenssl.cpp | 250 ++++++++++++++++++++++++++++++++++++++----- - kio/kssl/kopenssl.h | 80 ++++++++++++-- - kio/kssl/kssl.cpp | 4 - - kio/kssl/ksslcallback.c | 6 +- - kio/kssl/ksslcertchain.cpp | 53 +++------ - kio/kssl/ksslcertificate.cpp | 68 +++++++----- - 6 files changed, 351 insertions(+), 110 deletions(-) - -diff --git a/kio/kssl/kopenssl.cpp b/kio/kssl/kopenssl.cpp -index e3ca535b25..8f8b921159 100644 ---- a/kio/kssl/kopenssl.cpp -+++ b/kio/kssl/kopenssl.cpp -@@ -75,18 +75,26 @@ static void (*K_X509_STORE_CTX_free) (X509_STORE_CTX *) = 0L; - static int (*K_X509_verify_cert) (X509_STORE_CTX *) = 0L; - static X509_STORE_CTX *(*K_X509_STORE_CTX_new) (void) = 0L; - static void (*K_X509_STORE_free) (X509_STORE *) = 0L; -+static void (*K_X509_STORE_set_verify_cb)(X509_STORE *, int (*)(int, X509_STORE_CTX *)) = 0L; - static X509_STORE *(*K_X509_STORE_new) (void) = 0L; - static void (*K_X509_free) (X509 *) = 0L; - static char *(*K_X509_NAME_oneline) (X509_NAME *,char *,int) = 0L; - static X509_NAME *(*K_X509_get_subject_name) (X509 *) = 0L; - static X509_NAME *(*K_X509_get_issuer_name) (X509 *) = 0L; -+static void (*K_X509_get0_signature)(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x) = 0L; - static X509_LOOKUP *(*K_X509_STORE_add_lookup) (X509_STORE *, X509_LOOKUP_METHOD *) = 0L; - static X509_LOOKUP_METHOD *(*K_X509_LOOKUP_file)(void) = 0L; - static void (*K_X509_LOOKUP_free)(X509_LOOKUP *) = 0L; - static int (*K_X509_LOOKUP_ctrl)(X509_LOOKUP *, int, const char *, long, char **) = 0L; - static void (*K_X509_STORE_CTX_init)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *) = 0L; -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static void (*K_CRYPTO_free) (void *) = 0L; -+#else -+static void (*K_CRYPTO_free)(void *, const char *, int) = 0L; -+#endif - static X509* (*K_X509_dup) (X509 *) = 0L; -+static ASN1_TIME *(*K_X509_getm_notBefore)(const X509 *) = 0L; -+static ASN1_TIME *(*K_X509_getm_notAfter)(const X509 *) = 0L; - static BIO_METHOD *(*K_BIO_s_mem) (void) = 0L; - static BIO* (*K_BIO_new) (BIO_METHOD *) = 0L; - static BIO* (*K_BIO_new_fp) (FILE *, int) = 0L; -@@ -118,13 +126,16 @@ static int (*K_SSL_get_error) (SSL*, int) = 0L; - static STACK_OF(X509)* (*K_SSL_get_peer_cert_chain) (SSL*) = 0L; - static void (*K_X509_STORE_CTX_set_chain) (X509_STORE_CTX *, STACK_OF(X509)*) = 0L; - static void (*K_X509_STORE_CTX_set_purpose) (X509_STORE_CTX *, int) = 0L; --static void (*K_sk_free) (STACK*) = 0L; --static int (*K_sk_num) (STACK*) = 0L; --static char* (*K_sk_pop) (STACK*) = 0L; --static char* (*K_sk_value) (STACK*, int) = 0L; --static STACK* (*K_sk_new) (int (*)()) = 0L; --static int (*K_sk_push) (STACK*, char*) = 0L; --static STACK* (*K_sk_dup) (STACK *) = 0L; -+static X509 *(*K_X509_STORE_CTX_get_current_cert)(X509_STORE_CTX *) = 0L; -+static void (*K_X509_STORE_CTX_set_error)(X509_STORE_CTX *, int) = 0L; -+static int (*K_X509_STORE_CTX_get_error)(X509_STORE_CTX *) = 0L; -+static void (*K_OPENSSL_sk_free)(STACK *) = 0L; -+static int (*K_OPENSSL_sk_num)(STACK *) = 0L; -+static char *(*K_OPENSSL_sk_pop)(STACK *) = 0L; -+static char *(*K_OPENSSL_sk_value)(STACK *, int) = 0L; -+static STACK *(*K_OPENSSL_sk_new)(int (*)()) = 0L; -+static int (*K_OPENSSL_sk_push)(STACK *, char *) = 0L; -+static STACK *(*K_OPENSSL_sk_dup)(STACK *) = 0L; - static char * (*K_i2s_ASN1_INTEGER) (X509V3_EXT_METHOD *, ASN1_INTEGER *) =0L; - static ASN1_INTEGER * (*K_X509_get_serialNumber) (X509 *) = 0L; - static EVP_PKEY *(*K_X509_get_pubkey)(X509 *) = 0L; -@@ -164,6 +175,12 @@ static int (*K_X509_PURPOSE_get_id)(X509_PURPOSE *) = 0L; - static int (*K_X509_check_purpose)(X509*,int,int) = 0L; - static X509_PURPOSE* (*K_X509_PURPOSE_get0)(int) = 0L; - static int (*K_EVP_PKEY_assign)(EVP_PKEY*, int, char*) = 0L; -+static int (*K_EVP_PKEY_base_id)(EVP_PKEY *) = 0L; -+static RSA *(*K_EVP_PKEY_get0_RSA)(EVP_PKEY *) = 0L; -+static void (*K_RSA_get0_key)(RSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **) = 0L; -+static DSA *(*K_EVP_PKEY_get0_DSA)(EVP_PKEY *) = 0L; -+static void (*K_DSA_get0_pqg)(DSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **) = 0L; -+static void (*K_DSA_get0_key)(DSA *, const BIGNUM **, const BIGNUM **) = 0L; - static int (*K_X509_REQ_set_pubkey)(X509_REQ*, EVP_PKEY*) = 0L; - static RSA *(*K_RSA_generate_key)(int, unsigned long, void (*)(int,int,void *), void *) = 0L; - static int (*K_i2d_X509_REQ_fp)(FILE*, X509_REQ*) = 0L; -@@ -410,7 +427,11 @@ KOpenSSLProxy::KOpenSSLProxy() - K_RAND_load_file = (int (*)(const char *, long)) d->cryptoLib->resolveFunction("RAND_load_file"); - K_RAND_file_name = (const char* (*)(char *, size_t)) d->cryptoLib->resolveFunction("RAND_file_name"); - K_RAND_write_file = (int (*)(const char *)) d->cryptoLib->resolveFunction("RAND_write_file"); -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - K_CRYPTO_free = (void (*) (void *)) d->cryptoLib->resolveFunction("CRYPTO_free"); -+#else -+ K_CRYPTO_free = (void (*)(void *, const char *, int)) d->cryptoLib->resolveFunction("CRYPTO_free"); -+#endif - K_d2i_X509 = (X509 * (*)(X509 **,unsigned char **,long)) d->cryptoLib->resolveFunction("d2i_X509"); - K_i2d_X509 = (int (*)(X509 *,unsigned char **)) d->cryptoLib->resolveFunction("i2d_X509"); - K_X509_cmp = (int (*)(X509 *, X509 *)) d->cryptoLib->resolveFunction("X509_cmp"); -@@ -419,15 +440,19 @@ KOpenSSLProxy::KOpenSSLProxy() - K_X509_verify_cert = (int (*) (X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_verify_cert"); - K_X509_STORE_new = (X509_STORE * (*) (void)) d->cryptoLib->resolveFunction("X509_STORE_new"); - K_X509_STORE_free = (void (*) (X509_STORE *)) d->cryptoLib->resolveFunction("X509_STORE_free"); -+ K_X509_STORE_set_verify_cb = (void (*)(X509_STORE *, int (*)(int, X509_STORE_CTX *))) d->cryptoLib->resolveFunction("X509_STORE_set_verify_cb"); - K_X509_NAME_oneline = (char * (*) (X509_NAME *,char *,int)) d->cryptoLib->resolveFunction("X509_NAME_oneline"); - K_X509_get_subject_name = (X509_NAME * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_subject_name"); - K_X509_get_issuer_name = (X509_NAME * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_issuer_name"); -+ K_X509_get0_signature = (void (*)(const ASN1_BIT_STRING **, const X509_ALGOR **, const X509 *)) d->cryptoLib->resolveFunction("X509_get0_signature"); - K_X509_STORE_add_lookup = (X509_LOOKUP *(*) (X509_STORE *, X509_LOOKUP_METHOD *)) d->cryptoLib->resolveFunction("X509_STORE_add_lookup"); - K_X509_LOOKUP_file = (X509_LOOKUP_METHOD *(*)(void)) d->cryptoLib->resolveFunction("X509_LOOKUP_file"); - K_X509_LOOKUP_free = (void (*)(X509_LOOKUP *)) d->cryptoLib->resolveFunction("X509_LOOKUP_free"); - K_X509_LOOKUP_ctrl = (int (*)(X509_LOOKUP *, int, const char *, long, char **)) d->cryptoLib->resolveFunction("X509_LOOKUP_ctrl"); - K_X509_STORE_CTX_init = (void (*)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_init"); - K_X509_dup = (X509* (*)(X509*)) d->cryptoLib->resolveFunction("X509_dup"); -+ K_X509_getm_notBefore = (ASN1_TIME *(*)(const X509 *)) d->cryptoLib->resolveFunction("X509_getm_notBefore"); -+ K_X509_getm_notAfter = (ASN1_TIME *(*)(const X509 *)) d->cryptoLib->resolveFunction("X509_getm_notAfter"); - K_BIO_s_mem = (BIO_METHOD *(*) (void)) d->cryptoLib->resolveFunction("BIO_s_mem"); - K_BIO_new = (BIO* (*)(BIO_METHOD *)) d->cryptoLib->resolveFunction("BIO_new"); - K_BIO_new_fp = (BIO* (*)(FILE*, int)) d->cryptoLib->resolveFunction("BIO_new_fp"); -@@ -454,13 +479,26 @@ KOpenSSLProxy::KOpenSSLProxy() - K_X509_REQ_new = (X509_REQ* (*)()) d->cryptoLib->resolveFunction("X509_REQ_new"); - K_X509_STORE_CTX_set_chain = (void (*)(X509_STORE_CTX *, STACK_OF(X509)*)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_chain"); - K_X509_STORE_CTX_set_purpose = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_purpose"); -- K_sk_free = (void (*) (STACK *)) d->cryptoLib->resolveFunction("sk_free"); -- K_sk_num = (int (*) (STACK *)) d->cryptoLib->resolveFunction("sk_num"); -- K_sk_pop = (char* (*) (STACK *)) d->cryptoLib->resolveFunction("sk_pop"); -- K_sk_value = (char* (*) (STACK *, int)) d->cryptoLib->resolveFunction("sk_value"); -- K_sk_new = (STACK* (*) (int (*)())) d->cryptoLib->resolveFunction("sk_new"); -- K_sk_push = (int (*) (STACK*, char*)) d->cryptoLib->resolveFunction("sk_push"); -- K_sk_dup = (STACK* (*) (STACK *)) d->cryptoLib->resolveFunction("sk_dup"); -+ K_X509_STORE_CTX_get_current_cert = (X509 * (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_get_current_cert"); -+ K_X509_STORE_CTX_set_error = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_error"); -+ K_X509_STORE_CTX_get_error = (int (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_get_error"); -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ K_OPENSSL_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_free"); -+ K_OPENSSL_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_num"); -+ K_OPENSSL_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_pop"); -+ K_OPENSSL_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("OPENSSL_sk_value"); -+ K_OPENSSL_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("OPENSSL_sk_new"); -+ K_OPENSSL_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("OPENSSL_sk_push"); -+ K_OPENSSL_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_dup"); -+#else -+ K_OPENSSL_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("sk_free"); -+ K_OPENSSL_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("sk_num"); -+ K_OPENSSL_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("sk_pop"); -+ K_OPENSSL_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("sk_value"); -+ K_OPENSSL_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("sk_new"); -+ K_OPENSSL_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("sk_push"); -+ K_OPENSSL_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("sk_dup"); -+#endif - K_i2s_ASN1_INTEGER = (char *(*) (X509V3_EXT_METHOD *, ASN1_INTEGER *)) d->cryptoLib->resolveFunction("i2s_ASN1_INTEGER"); - K_X509_get_serialNumber = (ASN1_INTEGER * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_serialNumber"); - K_X509_get_pubkey = (EVP_PKEY *(*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_pubkey"); -@@ -504,6 +542,12 @@ KOpenSSLProxy::KOpenSSLProxy() - K_X509_check_purpose = (int (*)(X509*,int,int)) d->cryptoLib->resolveFunction("X509_check_purpose"); - K_X509_PURPOSE_get0 = (X509_PURPOSE *(*)(int)) d->cryptoLib->resolveFunction("X509_PURPOSE_get0"); - K_EVP_PKEY_assign = (int (*)(EVP_PKEY*, int, char*)) d->cryptoLib->resolveFunction("EVP_PKEY_assign"); -+ K_EVP_PKEY_base_id = (int (*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_base_id"); -+ K_EVP_PKEY_get0_RSA = (RSA *(*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_get0_RSA"); -+ K_RSA_get0_key = (void (*)(RSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("ESA_get0_key"); -+ K_EVP_PKEY_get0_DSA = (DSA *(*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_get0_DSA"); -+ K_DSA_get0_pqg = (void (*)(DSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("DSA_get0_pqg"); -+ K_DSA_get0_key = (void (*)(DSA *, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("DSA_get0_key"); - K_X509_REQ_set_pubkey = (int (*)(X509_REQ*, EVP_PKEY*)) d->cryptoLib->resolveFunction("X509_REQ_set_pubkey"); - K_RSA_generate_key = (RSA* (*)(int, unsigned long, void (*)(int,int,void *), void *)) d->cryptoLib->resolveFunction("RSA_generate_key"); - K_i2d_X509_REQ_fp = (int (*)(FILE *, X509_REQ *)) d->cryptoLib->resolveFunction("i2d_X509_REQ_fp"); -@@ -866,6 +910,16 @@ void KOpenSSLProxy::X509_STORE_free(X509_STORE *v) { - } - - -+void KOpenSSLProxy::X509_STORE_set_verify_cb(X509_STORE *store, int (*verify_cb)(int, X509_STORE_CTX *)) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ X509_STORE_set_verify_cb_func(store, verify_cb); -+#else -+ if (K_X509_STORE_set_verify_cb) (K_X509_STORE_set_verify_cb)(store, verify_cb); -+#endif -+} -+ -+ - X509_STORE_CTX *KOpenSSLProxy::X509_STORE_CTX_new(void) { - if (K_X509_STORE_CTX_new) return (K_X509_STORE_CTX_new)(); - return 0L; -@@ -906,6 +960,17 @@ X509_NAME *KOpenSSLProxy::X509_get_issuer_name(X509 *a) { - } - - -+void KOpenSSLProxy::X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **algor, const X509 *x) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ if (psig) *psig = x->signature; -+ if (algor) *algor = x->sig_alg; -+#else -+ if (K_X509_get0_signature) return (K_X509_get0_signature)(psig, algor, x); -+#endif -+} -+ -+ - X509_LOOKUP *KOpenSSLProxy::X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m) { - if (K_X509_STORE_add_lookup) return (K_X509_STORE_add_lookup)(v,m); - return 0L; -@@ -934,9 +999,16 @@ void KOpenSSLProxy::X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, - } - - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - void KOpenSSLProxy::CRYPTO_free(void *x) { - if (K_CRYPTO_free) (K_CRYPTO_free)(x); - } -+#else -+void KOpenSSLProxy::CRYPTO_free(void *x, const char *file, int line) -+{ -+ if (K_CRYPTO_free) K_CRYPTO_free(x, file, line); -+} -+#endif - - - X509 *KOpenSSLProxy::X509_dup(X509 *x509) { -@@ -945,6 +1017,28 @@ X509 *KOpenSSLProxy::X509_dup(X509 *x509) { - } - - -+ASN1_TIME *KOpenSSLProxy::X509_getm_notBefore(const X509 *x) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return X509_get_notBefore(x); -+#else -+ if (K_X509_getm_notBefore) return (K_X509_getm_notBefore)(x); -+ else return 0L; -+#endif -+} -+ -+ -+ASN1_TIME *KOpenSSLProxy::X509_getm_notAfter(const X509 *x) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return X509_get_notAfter(x); -+#else -+ if (K_X509_getm_notAfter) return (K_X509_getm_notAfter)(x); -+ else return 0L; -+#endif -+} -+ -+ - BIO *KOpenSSLProxy::BIO_new(BIO_METHOD *type) { - if (K_BIO_new) return (K_BIO_new)(type); - else return 0L; -@@ -1093,25 +1187,25 @@ STACK_OF(X509) *KOpenSSLProxy::SSL_get_peer_cert_chain(SSL *s) { - } - - --void KOpenSSLProxy::sk_free(STACK *s) { -- if (K_sk_free) (K_sk_free)(s); -+void KOpenSSLProxy::OPENSSL_sk_free(STACK *s) { -+ if (K_OPENSSL_sk_free) (K_OPENSSL_sk_free)(s); - } - - --int KOpenSSLProxy::sk_num(STACK *s) { -- if (K_sk_num) return (K_sk_num)(s); -+int KOpenSSLProxy::OPENSSL_sk_num(STACK *s) { -+ if (K_OPENSSL_sk_num) return (K_OPENSSL_sk_num)(s); - else return -1; - } - - --char *KOpenSSLProxy::sk_pop(STACK *s) { -- if (K_sk_pop) return (K_sk_pop)(s); -+char *KOpenSSLProxy::OPENSSL_sk_pop(STACK *s) { -+ if (K_OPENSSL_sk_pop) return (K_OPENSSL_sk_pop)(s); - else return 0L; - } - - --char *KOpenSSLProxy::sk_value(STACK *s, int n) { -- if (K_sk_value) return (K_sk_value)(s, n); -+char *KOpenSSLProxy::OPENSSL_sk_value(STACK *s, int n) { -+ if (K_OPENSSL_sk_value) return (K_OPENSSL_sk_value)(s, n); - else return 0L; - } - -@@ -1125,20 +1219,52 @@ void KOpenSSLProxy::X509_STORE_CTX_set_purpose(X509_STORE_CTX *v, int purpose) { - } - - --STACK* KOpenSSLProxy::sk_dup(STACK *s) { -- if (K_sk_dup) return (K_sk_dup)(s); -+X509 *KOpenSSLProxy::X509_STORE_CTX_get_current_cert(X509_STORE_CTX *v) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return v->current_cert; -+#else -+ if (K_X509_STORE_CTX_get_current_cert) return (K_X509_STORE_CTX_get_current_cert)(v); -+ else return 0L; -+#endif -+} -+ -+ -+void KOpenSSLProxy::X509_STORE_CTX_set_error(X509_STORE_CTX *v, int error) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ v->error = error; -+#else -+ if (K_X509_STORE_CTX_set_error) (K_X509_STORE_CTX_set_error)(v, error); -+#endif -+} -+ -+ -+int KOpenSSLProxy::X509_STORE_CTX_get_error(X509_STORE_CTX *v) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return v->error; -+#else -+ if (K_X509_STORE_CTX_get_error) return (K_X509_STORE_CTX_get_error)(v); -+ else return 0; -+#endif -+} -+ -+ -+STACK* KOpenSSLProxy::OPENSSL_sk_dup(STACK *s) { -+ if (K_OPENSSL_sk_dup) return (K_OPENSSL_sk_dup)(s); - else return 0L; - } - - --STACK* KOpenSSLProxy::sk_new(int (*cmp)()) { -- if (K_sk_new) return (K_sk_new)(cmp); -+STACK* KOpenSSLProxy::OPENSSL_sk_new(int (*cmp)()) { -+ if (K_OPENSSL_sk_new) return (K_OPENSSL_sk_new)(cmp); - else return 0L; - } - - --int KOpenSSLProxy::sk_push(STACK* s, char* d) { -- if (K_sk_push) return (K_sk_push)(s,d); -+int KOpenSSLProxy::OPENSSL_sk_push(STACK* s, char* d) { -+ if (K_OPENSSL_sk_push) return (K_OPENSSL_sk_push)(s,d); - else return -1; - } - -@@ -1423,6 +1549,74 @@ int KOpenSSLProxy::EVP_PKEY_assign(EVP_PKEY *pkey, int type, char *key) { - else return -1; - } - -+ -+int KOpenSSLProxy::EVP_PKEY_base_id(EVP_PKEY *pkey) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return pkey->type; -+#else -+ if (K_EVP_PKEY_base_id) return (K_EVP_PKEY_base_id)(pkey); -+ else return 0; -+#endif -+} -+ -+ -+RSA *KOpenSSLProxy::EVP_PKEY_get0_RSA(EVP_PKEY *pkey) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return pkey->pkey.rsa; -+#else -+ if (K_EVP_PKEY_get0_RSA) return (K_EVP_PKEY_get0_RSA)(pkey); -+ else return 0L; -+#endif -+} -+ -+ -+void KOpenSSLProxy::RSA_get0_key(RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ if (n) *n = rsa->n; -+ if (e) *e = rsa->e; -+ if (d) *d = rsa->d; -+#else -+ if (K_RSA_get0_key) (K_RSA_get0_key)(rsa, n, e, d); -+#endif -+} -+ -+ -+DSA *KOpenSSLProxy::EVP_PKEY_get0_DSA(EVP_PKEY *pkey) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ return pkey->pkey.dsa; -+#else -+ if (K_EVP_PKEY_get0_DSA) return (K_EVP_PKEY_get0_DSA)(pkey); -+ else return 0L; -+#endif -+} -+ -+ -+void KOpenSSLProxy::DSA_get0_pqg(DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ if (p) *p = dsa->p; -+ if (q) *q = dsa->q; -+ if (g) *g = dsa->g; -+#else -+ if (K_DSA_get0_pqg) (K_DSA_get0_pqg)(dsa, p, q, g); -+#endif -+} -+ -+ -+void KOpenSSLProxy::DSA_get0_key(DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key) -+{ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ if (pub_key) *pub_key = dsa->pub_key; -+ if (priv_key) *priv_key = dsa->priv_key; -+#else -+ if (K_DSA_get0_key) (K_DSA_get0_key)(dsa, pub_key, priv_key); -+#endif -+} -+ - - int KOpenSSLProxy::X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey) { - if (K_X509_REQ_set_pubkey) return (K_X509_REQ_set_pubkey)(x, pkey); -diff --git a/kio/kssl/kopenssl.h b/kio/kssl/kopenssl.h -index ab05486336..ae3398fbef 100644 ---- a/kio/kssl/kopenssl.h -+++ b/kio/kssl/kopenssl.h -@@ -297,6 +297,18 @@ public: - - - /* -+ * X509_getm_notBefore - get validity start -+ */ -+ ASN1_TIME *X509_getm_notBefore(const X509 *x); -+ -+ -+ /* -+ * X509_getm_notAfter - get validity end -+ */ -+ ASN1_TIME *X509_getm_notAfter(const X509 *x); -+ -+ -+ /* - * X509_STORE_CTX_new - create an X509 store context - */ - X509_STORE_CTX *X509_STORE_CTX_new(void); -@@ -313,11 +325,31 @@ public: - */ - void X509_STORE_CTX_set_chain(X509_STORE_CTX *v, STACK_OF(X509)* x); - -+ - /* - * X509_STORE_CTX_set_purpose - set the purpose of the certificate - */ - void X509_STORE_CTX_set_purpose(X509_STORE_CTX *v, int purpose); - -+ -+ /* -+ * X509_STORE_CTX_get_current_cert - get the current certificate -+ */ -+ X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *v); -+ -+ -+ /* -+ * X509_STORE_CTX_set_error - set certificate error -+ */ -+ void X509_STORE_CTX_set_error(X509_STORE_CTX *v, int error); -+ -+ -+ /* -+ * X509_STORE_CTX_get_error - get certificate error -+ */ -+ int X509_STORE_CTX_get_error(X509_STORE_CTX *v); -+ -+ - /* - * X509_verify_cert - verify the certificate - */ -@@ -337,6 +369,12 @@ public: - - - /* -+ * X509_STORE_set_verify_cb - set verify callback -+ */ -+ void X509_STORE_set_verify_cb(X509_STORE *v, int (*verify_cb)(int, X509_STORE_CTX *)); -+ -+ -+ /* - * X509_free - free up an X509 - */ - void X509_free(X509 *v); -@@ -361,6 +399,12 @@ public: - - - /* -+ * X509_get0_signature - return X509 signature and signature algorithm -+ */ -+ void X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x); -+ -+ -+ /* - * X509_STORE_add_lookup - add a lookup file/method to an X509 store - */ - X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m); -@@ -393,7 +437,11 @@ public: - /* - * CRYPTO_free - free up an internally allocated object - */ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - void CRYPTO_free(void *x); -+#else -+ void CRYPTO_free(void *x, const char *file, int line); -+#endif - - /* - * BIO_new - create new BIO -@@ -505,53 +553,53 @@ public: - /* - * Pop off the stack - */ -- char *sk_pop(STACK *s); -+ char *OPENSSL_sk_pop(STACK *s); - - - /* - * Free the stack - */ -- void sk_free(STACK *s); -+ void OPENSSL_sk_free(STACK *s); - - #if OPENSSL_VERSION_NUMBER >= 0x10000000L -- void sk_free(void *s) { return sk_free(reinterpret_cast<STACK*>(s)); } -+ void OPENSSL_sk_free(void *s) { return OPENSSL_sk_free(reinterpret_cast<STACK*>(s)); } - #endif - - /* - * Number of elements in the stack - */ -- int sk_num(STACK *s); -+ int OPENSSL_sk_num(STACK *s); - - - /* - * Value of element n in the stack - */ -- char *sk_value(STACK *s, int n); -+ char *OPENSSL_sk_value(STACK *s, int n); - - #if OPENSSL_VERSION_NUMBER >= 0x10000000L -- char *sk_value(void *s, int n) { return sk_value(reinterpret_cast<STACK*>(s), n); } -+ char *OPENSSL_sk_value(void *s, int n) { return OPENSSL_sk_value(reinterpret_cast<STACK*>(s), n); } - #endif - - /* - * Create a new stack - */ -- STACK *sk_new(int (*cmp)()); -+ STACK *OPENSSL_sk_new(int (*cmp)()); - - - /* - * Add an element to the stack - */ -- int sk_push(STACK *s, char *d); -+ int OPENSSL_sk_push(STACK *s, char *d); - - #if OPENSSL_VERSION_NUMBER >= 0x10000000L -- int sk_push(void *s, void *d) { return sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); } -+ int OPENSSL_sk_push(void *s, void *d) { return OPENSSL_sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); } - #endif - - - /* - * Duplicate the stack - */ -- STACK *sk_dup(STACK *s); -+ STACK *OPENSSL_sk_dup(STACK *s); - - - /* -@@ -800,6 +848,18 @@ public: - - - /* -+ * Get key type -+ */ -+ int EVP_PKEY_base_id(EVP_PKEY *pkey); -+ -+ RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey); -+ void RSA_get0_key(RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d); -+ DSA *EVP_PKEY_get0_DSA(EVP_PKEY *pkey); -+ void DSA_get0_pqg(DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g); -+ void DSA_get0_key(DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key); -+ -+ -+ /* - * Generate a RSA key - */ - RSA *RSA_generate_key(int bits, unsigned long e, void -diff --git a/kio/kssl/kssl.cpp b/kio/kssl/kssl.cpp -index c36db55a42..faba1bb5ab 100644 ---- a/kio/kssl/kssl.cpp -+++ b/kio/kssl/kssl.cpp -@@ -55,8 +55,6 @@ - #warning "kssl.cc needs to be ported to QSslSocket" - #endif - --#define sk_dup d->kossl->sk_dup -- - class KSSLPrivate { - public: - KSSLPrivate() { -@@ -212,5 +210,3 @@ bool KSSL::doesSSLWork() { - return m_bSSLWorks; - } - --#undef sk_dup -- -diff --git a/kio/kssl/ksslcallback.c b/kio/kssl/ksslcallback.c -index 516b916337..38e94356e8 100644 ---- a/kio/kssl/ksslcallback.c -+++ b/kio/kssl/ksslcallback.c -@@ -28,7 +28,7 @@ bool KSSL_X509CallBack_ca_found; - extern "C" { - static int X509Callback(int ok, X509_STORE_CTX *ctx) { - -- kDebug(7029) << "X509Callback: ok = " << ok << " error = " << ctx->error << " depth = " << ctx->error_depth; -+ //kDebug(7029) << "X509Callback: ok = " << ok << " error = " << ctx->error << " depth = " << ctx->error_depth; - // Here is how this works. We put "ok = 1;" in any case that we - // don't consider to be an error. In that case, it will return OK - // for the certificate check as long as there are no other critical -@@ -39,14 +39,14 @@ static int X509Callback(int ok, X509_STORE_CTX *ctx) { - - if (KSSL_X509CallBack_ca) - { -- if (KOSSL::self()->X509_cmp(ctx->current_cert, KSSL_X509CallBack_ca) != 0) -+ if (KOSSL::self()->X509_cmp(KOSSL::self()->X509_STORE_CTX_get_current_cert(ctx), KSSL_X509CallBack_ca) != 0) - return 1; // Ignore errors for this certificate - - KSSL_X509CallBack_ca_found = true; - } - - if (!ok) { -- switch (ctx->error) { -+ switch (KOSSL::self()->X509_STORE_CTX_get_error(ctx)) { - case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: - case X509_V_ERR_UNABLE_TO_GET_CRL: - case X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: -diff --git a/kio/kssl/ksslcertchain.cpp b/kio/kssl/ksslcertchain.cpp -index 2be7995bf8..cdfab2b5ae 100644 ---- a/kio/kssl/ksslcertchain.cpp -+++ b/kio/kssl/ksslcertchain.cpp -@@ -44,16 +44,6 @@ - #include <kdebug.h> - #include <QtCore/QStringList> - --#ifdef KSSL_HAVE_SSL --#define sk_new d->kossl->sk_new --#define sk_push d->kossl->sk_push --#define sk_free d->kossl->sk_free --#define sk_value d->kossl->sk_value --#define sk_num d->kossl->sk_num --#define sk_dup d->kossl->sk_dup --#define sk_pop d->kossl->sk_pop --#endif -- - class KSSLCertChainPrivate { - public: - KSSLCertChainPrivate() { -@@ -79,11 +69,11 @@ KSSLCertChain::~KSSLCertChain() { - STACK_OF(X509) *x = (STACK_OF(X509) *)_chain; - - for (;;) { -- X509* x5 = sk_X509_pop(x); -+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK *>(x))); - if (!x5) break; - d->kossl->X509_free(x5); - } -- sk_X509_free(x); -+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK *>(x)); - } - #endif - delete d; -@@ -106,7 +96,7 @@ KSSLCertChain *KSSLCertChain::replicate() { - - int KSSLCertChain::depth() { - #ifdef KSSL_HAVE_SSL -- return sk_X509_num((STACK_OF(X509)*)_chain); -+ return d->kossl->OPENSSL_sk_num(static_cast<STACK *>(_chain)); - #endif - return 0; - } -@@ -123,8 +113,8 @@ QList<KSSLCertificate *> KSSLCertChain::getChain() const { - #ifdef KSSL_HAVE_SSL - STACK_OF(X509) *x = (STACK_OF(X509) *)_chain; - -- for (int i = 0; i < sk_X509_num(x); i++) { -- X509* x5 = sk_X509_value(x, i); -+ for (int i = 0; i < d->kossl->OPENSSL_sk_num(reinterpret_cast<STACK *>(x)); i++) { -+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_value(reinterpret_cast<STACK *>(x), i)); - if (!x5) continue; - KSSLCertificate *nc = new KSSLCertificate; - nc->setCert(d->kossl->X509_dup(x5)); -@@ -142,18 +132,18 @@ void KSSLCertChain::setChain(const QList<KSSLCertificate *>& chain) { - STACK_OF(X509) *x = (STACK_OF(X509) *)_chain; - - for (;;) { -- X509* x5 = sk_X509_pop(x); -+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK*>(x))); - if (!x5) break; - d->kossl->X509_free(x5); - } -- sk_X509_free(x); -- _chain = NULL; -+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK*>(x)); -+ _chain = NULL; - } - - if (chain.isEmpty()) return; -- _chain = (void *)sk_new(NULL); -+ _chain = (void *)d->kossl->OPENSSL_sk_new(NULL); - foreach (KSSLCertificate *x, chain) { -- sk_X509_push((STACK_OF(X509)*)_chain, d->kossl->X509_dup(x->getCert())); -+ d->kossl->OPENSSL_sk_push(static_cast<STACK*>(_chain), d->kossl->X509_dup(x->getCert())); - } - - #endif -@@ -166,23 +156,23 @@ if (_chain) { - STACK_OF(X509) *x = (STACK_OF(X509) *)_chain; - - for (;;) { -- X509* x5 = sk_X509_pop(x); -+ X509 *x5 = reinterpret_cast<X509 *>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK *>(x))); - if (!x5) break; - d->kossl->X509_free(x5); - } -- sk_X509_free(x); -+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK *>(x)); - _chain = NULL; - } - - if (!stack_of_x509) return; - --_chain = (void *)sk_new(NULL); -+_chain = (void *)d->kossl->OPENSSL_sk_new(NULL); - STACK_OF(X509) *x = (STACK_OF(X509) *)stack_of_x509; - -- for (int i = 0; i < sk_X509_num(x); i++) { -- X509* x5 = sk_X509_value(x, i); -+ for (int i = 0; i < d->kossl->OPENSSL_sk_num(reinterpret_cast<STACK *>(x)); i++) { -+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_value(reinterpret_cast<STACK *>(x), i)); - if (!x5) continue; -- sk_X509_push((STACK_OF(X509)*)_chain,d->kossl->X509_dup(x5)); -+ d->kossl->OPENSSL_sk_push(reinterpret_cast<STACK *>(_chain), d->kossl->X509_dup(x5)); - } - - #else -@@ -202,14 +192,3 @@ void KSSLCertChain::setCertChain(const QStringList& chain) { - setChain(cl); - } - -- --#ifdef KSSL_HAVE_SSL --#undef sk_new --#undef sk_push --#undef sk_free --#undef sk_value --#undef sk_num --#undef sk_dup --#undef sk_pop --#endif -- -diff --git a/kio/kssl/ksslcertificate.cpp b/kio/kssl/ksslcertificate.cpp -index 0d4fbd9cdc..c93d5c5b22 100644 ---- a/kio/kssl/ksslcertificate.cpp -+++ b/kio/kssl/ksslcertificate.cpp -@@ -200,14 +200,17 @@ QString KSSLCertificate::getSignatureText() const { - char *s; - int n, i; - -- i = d->kossl->OBJ_obj2nid(d->m_cert->sig_alg->algorithm); -+ const X509_ALGOR *algor; -+ const ASN1_BIT_STRING *sig; -+ d->kossl->X509_get0_signature(&sig, &algor, d->m_cert); -+ i = d->kossl->OBJ_obj2nid(algor->algorithm); - rc = i18n("Signature Algorithm: "); - rc += (i == NID_undef)?i18n("Unknown"):QString(d->kossl->OBJ_nid2ln(i)); - - rc += '\n'; - rc += i18n("Signature Contents:"); -- n = d->m_cert->signature->length; -- s = (char *)d->m_cert->signature->data; -+ n = sig->length; -+ s = (char *)sig->data; - for (i = 0; i < n; ++i) { - if (i%20 != 0) { - rc += ':'; -@@ -233,9 +236,10 @@ void KSSLCertificate::getEmails(QStringList &to) const { - } - - STACK *s = d->kossl->X509_get1_email(d->m_cert); -+ const int size = d->kossl->OPENSSL_sk_num(s); - if (s) { -- for(int n=0; n < s->num; n++) { -- to.append(d->kossl->sk_value(s,n)); -+ for(int n=0; n < size; n++) { -+ to.append(d->kossl->OPENSSL_sk_value(s,n)); - } - d->kossl->X509_email_free(s); - } -@@ -317,13 +321,13 @@ QString rc = ""; - EVP_PKEY *pkey = d->kossl->X509_get_pubkey(d->m_cert); - if (pkey) { - #ifndef NO_RSA -- if (pkey->type == EVP_PKEY_RSA) { -+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_RSA) { - rc = "RSA"; - } - else - #endif - #ifndef NO_DSA -- if (pkey->type == EVP_PKEY_DSA) { -+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_DSA) { - rc = "DSA"; - } - else -@@ -347,8 +351,10 @@ char *x = NULL; - if (pkey) { - rc = i18nc("Unknown", "Unknown key algorithm"); - #ifndef NO_RSA -- if (pkey->type == EVP_PKEY_RSA) { -- x = d->kossl->BN_bn2hex(pkey->pkey.rsa->n); -+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_RSA) { -+ const BIGNUM *n, *e; -+ d->kossl->RSA_get0_key(d->kossl->EVP_PKEY_get0_RSA(pkey), &n, &e, NULL); -+ x = d->kossl->BN_bn2hex(n); - rc = i18n("Key type: RSA (%1 bit)", strlen(x)*4) + '\n'; - - rc += i18n("Modulus: "); -@@ -364,15 +370,18 @@ char *x = NULL; - rc += '\n'; - d->kossl->OPENSSL_free(x); - -- x = d->kossl->BN_bn2hex(pkey->pkey.rsa->e); -+ x = d->kossl->BN_bn2hex(e); - rc += i18n("Exponent: 0x") + QLatin1String(x) + - QLatin1String("\n"); - d->kossl->OPENSSL_free(x); - } - #endif - #ifndef NO_DSA -- if (pkey->type == EVP_PKEY_DSA) { -- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->p); -+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_DSA) { -+ DSA *dsa = d->kossl->EVP_PKEY_get0_DSA(pkey); -+ const BIGNUM *p, *q, *g; -+ d->kossl->DSA_get0_pqg(dsa, &p, &q, &g); -+ x = d->kossl->BN_bn2hex(p); - // hack - this may not be always accurate - rc = i18n("Key type: DSA (%1 bit)", strlen(x)*4) + '\n'; - -@@ -389,7 +398,7 @@ char *x = NULL; - rc += '\n'; - d->kossl->OPENSSL_free(x); - -- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->q); -+ x = d->kossl->BN_bn2hex(q); - rc += i18n("160 bit prime factor: "); - for (unsigned int i = 0; i < strlen(x); i++) { - if (i%40 != 0 && i%2 == 0) { -@@ -403,7 +412,7 @@ char *x = NULL; - rc += '\n'; - d->kossl->OPENSSL_free(x); - -- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->g); -+ x = d->kossl->BN_bn2hex(g); - rc += QString("g: "); - for (unsigned int i = 0; i < strlen(x); i++) { - if (i%40 != 0 && i%2 == 0) { -@@ -417,7 +426,9 @@ char *x = NULL; - rc += '\n'; - d->kossl->OPENSSL_free(x); - -- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->pub_key); -+ const BIGNUM *pub_key; -+ d->kossl->DSA_get0_key(dsa, &pub_key, NULL); -+ x = d->kossl->BN_bn2hex(pub_key); - rc += i18n("Public key: "); - for (unsigned int i = 0; i < strlen(x); i++) { - if (i%40 != 0 && i%2 == 0) { -@@ -682,7 +693,7 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi - return errors; - } - -- X509_STORE_set_verify_cb_func(certStore, X509Callback); -+ d->kossl->X509_STORE_set_verify_cb(certStore, X509Callback); - - certLookup = d->kossl->X509_STORE_add_lookup(certStore, d->kossl->X509_LOOKUP_file()); - if (!certLookup) { -@@ -724,9 +735,9 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi - KSSL_X509CallBack_ca = ca ? ca->d->m_cert : 0; - KSSL_X509CallBack_ca_found = false; - -- certStoreCTX->error = X509_V_OK; -+ d->kossl->X509_STORE_CTX_set_error(certStoreCTX, X509_V_OK); - rc = d->kossl->X509_verify_cert(certStoreCTX); -- int errcode = certStoreCTX->error; -+ int errcode = d->kossl->X509_STORE_CTX_get_error(certStoreCTX); - if (ca && !KSSL_X509CallBack_ca_found) { - ksslv = KSSLCertificate::Irrelevant; - } else { -@@ -739,9 +750,9 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi - d->kossl->X509_STORE_CTX_set_purpose(certStoreCTX, - X509_PURPOSE_NS_SSL_SERVER); - -- certStoreCTX->error = X509_V_OK; -+ d->kossl->X509_STORE_CTX_set_error(certStoreCTX, X509_V_OK); - rc = d->kossl->X509_verify_cert(certStoreCTX); -- errcode = certStoreCTX->error; -+ errcode = d->kossl->X509_STORE_CTX_get_error(certStoreCTX); - ksslv = processError(errcode); - } - d->kossl->X509_STORE_CTX_free(certStoreCTX); -@@ -978,7 +989,7 @@ KSSLCertificate::KSSLValidation KSSLCertificate::processError(int ec) { - - QString KSSLCertificate::getNotBefore() const { - #ifdef KSSL_HAVE_SSL -- return ASN1_UTCTIME_QString(X509_get_notBefore(d->m_cert)); -+ return ASN1_UTCTIME_QString(d->kossl->X509_getm_notBefore(d->m_cert)); - #else - return QString(); - #endif -@@ -987,7 +998,7 @@ QString KSSLCertificate::getNotBefore() const { - - QString KSSLCertificate::getNotAfter() const { - #ifdef KSSL_HAVE_SSL -- return ASN1_UTCTIME_QString(X509_get_notAfter(d->m_cert)); -+ return ASN1_UTCTIME_QString(d->kossl->X509_getm_notAfter(d->m_cert)); - #else - return QString(); - #endif -@@ -996,7 +1007,7 @@ QString KSSLCertificate::getNotAfter() const { - - QDateTime KSSLCertificate::getQDTNotBefore() const { - #ifdef KSSL_HAVE_SSL -- return ASN1_UTCTIME_QDateTime(X509_get_notBefore(d->m_cert), NULL); -+ return ASN1_UTCTIME_QDateTime(d->kossl->X509_getm_notBefore(d->m_cert), NULL); - #else - return QDateTime::currentDateTime(); - #endif -@@ -1005,7 +1016,7 @@ QDateTime KSSLCertificate::getQDTNotBefore() const { - - QDateTime KSSLCertificate::getQDTNotAfter() const { - #ifdef KSSL_HAVE_SSL -- return ASN1_UTCTIME_QDateTime(X509_get_notAfter(d->m_cert), NULL); -+ return ASN1_UTCTIME_QDateTime(d->kossl->X509_getm_notAfter(d->m_cert), NULL); - #else - return QDateTime::currentDateTime(); - #endif -@@ -1210,7 +1221,8 @@ typedef struct NETSCAPE_X509_st - // what a piece of crap this is - QByteArray KSSLCertificate::toNetscape() { - QByteArray qba; --#ifdef KSSL_HAVE_SSL -+ // no equivalent in OpenSSL 1.1.0 (?), so behave as if we had no OpenSSL at all -+#if KSSL_HAVE_SSL && OPENSSL_VERSION_NUMBER < 0x10100000L - NETSCAPE_X509 nx; - ASN1_OCTET_STRING hdr; - KTemporaryFile ktf; -@@ -1293,10 +1305,10 @@ QStringList KSSLCertificate::subjAltNames() const { - return rc; - } - -- int cnt = d->kossl->sk_GENERAL_NAME_num(names); -+ int cnt = d->kossl->OPENSSL_sk_num((STACK *)names); - - for (int i = 0; i < cnt; i++) { -- const GENERAL_NAME *val = (const GENERAL_NAME *)d->kossl->sk_value(names, i); -+ const GENERAL_NAME *val = (const GENERAL_NAME *)d->kossl->OPENSSL_sk_value(names, i); - if (val->type != GEN_DNS) { - continue; - } -@@ -1308,7 +1320,7 @@ QStringList KSSLCertificate::subjAltNames() const { - rc += s; - } - } -- d->kossl->sk_free(names); -+ d->kossl->OPENSSL_sk_free(names); - #endif - return rc; - } --- -2.13.6 - - diff --git a/source/kde/patch/kdelibs/coding-style-fixes.patch b/source/kde/patch/kdelibs/coding-style-fixes.patch deleted file mode 100644 index 11108f0a..00000000 --- a/source/kde/patch/kdelibs/coding-style-fixes.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 2173580f070e806d4715e13048c697c49ec262e2 Mon Sep 17 00:00:00 2001 -From: Aaron Seigo <aseigo@kde.org> -Date: Thu, 21 Feb 2013 17:59:58 +0100 -Subject: [PATCH 047/111] coding style fixes - ---- - kdeui/icons/kiconloader.cpp | 27 ++++++++++++--------------- - 1 file changed, 12 insertions(+), 15 deletions(-) - -diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp -index 6fed667..dba474d 100644 ---- a/kdeui/icons/kiconloader.cpp -+++ b/kdeui/icons/kiconloader.cpp -@@ -938,32 +938,29 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const - } - } - -- foreach (KIconThemeNode *themeNode, links) -- { -+ foreach (KIconThemeNode *themeNode, links) { - QString currentName = name; - -- while (!currentName.isEmpty()) -- { -- -+ while (!currentName.isEmpty()) { - //kDebug(264) << "Looking up" << currentName; - --// The following code has been commented out because the Qt SVG renderer needs --// to be improved. If you are going to change/remove some code from this part, --// please contact me before (ereslibre@kde.org), or kde-core-devel@kde.org. (ereslibre) -- for (int i = 0 ; i < 4 ; i++) -- { -+ for (int i = 0 ; i < 4 ; i++) { - icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchExact); -- if (icon.isValid()) -- return icon; -+ if (icon.isValid()) { -+ break; -+ } - - icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchBest); -- if (icon.isValid()) -- return icon; -+ if (icon.isValid()) { -+ break; -+ } - } -+ //kDebug(264) << "Looking up" << currentName; - -- if (genericFallback) -+ if (genericFallback) { - // we already tested the base name - break; -+ } - - int rindex = currentName.lastIndexOf('-'); - if (rindex > 1) { // > 1 so that we don't split x-content or x-epoc --- -1.8.1.4 - - diff --git a/source/kde/patch/kdelibs/kde4libs-4.14.26.diff b/source/kde/patch/kdelibs/kde4libs-4.14.26.diff deleted file mode 100644 index 2bc275ac..00000000 --- a/source/kde/patch/kdelibs/kde4libs-4.14.26.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- a/kio/kio/tcpslavebase.cpp -+++ b/kio/kio/tcpslavebase.cpp -@@ -499,7 +499,7 @@ - { - if (d->usingSSL) - return false; -- return d->startTLSInternal(KTcpSocket::TlsV1) & ResultOk; -+ return d->startTLSInternal(KTcpSocket::SecureProtocols) & ResultOk; - } - - TCPSlaveBase::SslResult TCPSlaveBase::TcpSlaveBasePrivate::startTLSInternal (KTcpSocket::SslVersion version, diff --git a/source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch b/source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch deleted file mode 100644 index 58afcaae..00000000 --- a/source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch +++ /dev/null @@ -1,112 +0,0 @@ -From 2c3762feddf7e66cf6b64d9058f625a715694a00 Mon Sep 17 00:00:00 2001 -From: Kai Uwe Broulik <kde@privat.broulik.de> -Date: Wed, 7 Aug 2019 09:47:46 +0200 -Subject: Security: remove support for $(...) in config keys with [$e] marker. - -It is very unclear at this point what a valid use case for this feature -would possibly be. The old documentation only mentions $(hostname) as -an example, which can be done with $HOSTNAME instead. - -Note that $(...) is still supported in Exec lines of desktop files, -this does not require [$e] anyway (and actually works better without it, -otherwise the $ signs need to be doubled to obey kconfig $e escaping rules...). - -Thanks to Fabian Vogt for testing. - -(This is a backport of KDE Frameworks 5 kconfig patch to kdelibs) - -Differential Revision: https://phabricator.kde.org/D22989 ---- - kdecore/config/kconfig.cpp | 32 +------------------------------- - kdecore/doc/README.kiosk | 12 ------------ - kdecore/tests/kconfigtest.cpp | 6 +----- - 3 files changed, 2 insertions(+), 48 deletions(-) - -diff --git a/kdecore/config/kconfig.cpp b/kdecore/config/kconfig.cpp -index 7ea26a5..b30584b 100644 ---- a/kdecore/config/kconfig.cpp -+++ b/kdecore/config/kconfig.cpp -@@ -160,37 +160,7 @@ QString KConfigPrivate::expandString(const QString& value) - int nDollarPos = aValue.indexOf( QLatin1Char('$') ); - while( nDollarPos != -1 && nDollarPos+1 < aValue.length()) { - // there is at least one $ -- if( aValue[nDollarPos+1] == QLatin1Char('(') ) { -- int nEndPos = nDollarPos+1; -- // the next character is not $ -- while ( (nEndPos <= aValue.length()) && (aValue[nEndPos]!=QLatin1Char(')')) ) -- nEndPos++; -- nEndPos++; -- QString cmd = aValue.mid( nDollarPos+2, nEndPos-nDollarPos-3 ); -- -- QString result; -- QByteArray oldpath = qgetenv( "PATH" ); -- QByteArray newpath; -- if (KGlobal::hasMainComponent()) { -- newpath = QFile::encodeName(KGlobal::dirs()->resourceDirs("exe").join(QChar::fromLatin1(KPATH_SEPARATOR))); -- if (!newpath.isEmpty() && !oldpath.isEmpty()) -- newpath += KPATH_SEPARATOR; -- } -- newpath += oldpath; -- setenv( "PATH", newpath, 1/*overwrite*/ ); --// FIXME: wince does not have pipes --#ifndef _WIN32_WCE -- FILE *fs = popen(QFile::encodeName(cmd).data(), "r"); -- if (fs) { -- QTextStream ts(fs, QIODevice::ReadOnly); -- result = ts.readAll().trimmed(); -- pclose(fs); -- } --#endif -- setenv( "PATH", oldpath, 1/*overwrite*/ ); -- aValue.replace( nDollarPos, nEndPos-nDollarPos, result ); -- nDollarPos += result.length(); -- } else if( aValue[nDollarPos+1] != QLatin1Char('$') ) { -+ if( aValue[nDollarPos+1] != QLatin1Char('$') ) { - int nEndPos = nDollarPos+1; - // the next character is not $ - QString aVarName; -diff --git a/kdecore/doc/README.kiosk b/kdecore/doc/README.kiosk -index b95002d..d902c61 100644 ---- a/kdecore/doc/README.kiosk -+++ b/kdecore/doc/README.kiosk -@@ -640,18 +640,6 @@ The following syntax is also supported: - Name[$ei]=${USER} - - --Shell Commands in KDE config files. --=================================== -- --Since KDE-3.1 arbitrary entries in configuration files can contain shell --commands. This way the value of a configuration entry can be determined --dynamically at runtime. In order to use this the entry must be marked --with [$e]. -- --Example: --Host[$e]=$(hostname) -- -- - KDE Kiosk Application API - ========================== - -diff --git a/kdecore/tests/kconfigtest.cpp b/kdecore/tests/kconfigtest.cpp -index 78e6ad1..37ea3c2 100644 ---- a/kdecore/tests/kconfigtest.cpp -+++ b/kdecore/tests/kconfigtest.cpp -@@ -479,12 +479,8 @@ void KConfigTest::testPath() - QCOMPARE(group.readPathEntry("withBraces", QString()), QString("file://" + HOMEPATH) ); - QVERIFY(group.hasKey("URL")); - QCOMPARE(group.readEntry("URL", QString()), QString("file://" + HOMEPATH) ); --#if !defined(Q_OS_WIN32) && !defined(Q_OS_MAC) -- // I don't know if this will work on windows -- // This test hangs on OS X - QVERIFY(group.hasKey("hostname")); -- QCOMPARE(group.readEntry("hostname", QString()), QHostInfo::localHostName()); --#endif -+ QCOMPARE(group.readEntry("hostname", QString()), QString("(hostname)")); // the $ got removed because empty var name - QVERIFY(group.hasKey("noeol")); - QCOMPARE(group.readEntry("noeol", QString()), QString("foo")); - } --- -cgit v1.1 - - diff --git a/source/kde/patch/kdelibs/kdelibs.docbook.patch b/source/kde/patch/kdelibs/kdelibs.docbook.patch deleted file mode 100644 index 6a20cd27..00000000 --- a/source/kde/patch/kdelibs/kdelibs.docbook.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- kdelibs-4.4.85/cmake/modules/FindDocBookXML.cmake.orig 2010-05-27 19:25:00.000000000 +0200 -+++ kdelibs-4.4.85/cmake/modules/FindDocBookXML.cmake 2010-06-07 16:18:35.000000000 +0200 -@@ -12,7 +12,7 @@ - # Redistribution and use is allowed according to the terms of the BSD license. - # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - --set (DOCBOOKXML_CURRENTDTD_VERSION "4.2" -+set (DOCBOOKXML_CURRENTDTD_VERSION "4.5" - CACHE INTERNAL "Required version of XML DTDs") - - set (DTD_PATH_LIST diff --git a/source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch b/source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch deleted file mode 100644 index 3a194477..00000000 --- a/source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- kdelibs-4.8.0/solid/solid/managerbase.cpp.orig 2011-07-27 20:34:39.000000000 +0200 -+++ kdelibs-4.8.0/solid/solid/managerbase.cpp 2012-01-26 09:17:49.409993419 +0100 -@@ -90,7 +90,11 @@ - # endif - - # if defined (HUPNP_FOUND) -- m_backends << new Solid::Backends::UPnP::UPnPDeviceManager(0); -+ bool solidUpnpEnabled -+ = QString::fromLocal8Bit(qgetenv("SOLID_UPNP")).toInt()==1; -+ if (solidUpnpEnabled) { -+ m_backends << new Solid::Backends::UPnP::UPnPDeviceManager(0); -+ } - # endif - } - } diff --git a/source/kde/patch/kdelibs/return-application-icons-properly.patch b/source/kde/patch/kdelibs/return-application-icons-properly.patch deleted file mode 100644 index 2bdb53ad..00000000 --- a/source/kde/patch/kdelibs/return-application-icons-properly.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 613c951a1157df0d8a907a155a5eaa706816d5f9 Mon Sep 17 00:00:00 2001 -From: Aaron Seigo <aseigo@kde.org> -Date: Thu, 21 Feb 2013 17:58:11 +0100 -Subject: return application icons properly - -BUG:315578 ---- - kdeui/icons/kiconloader.cpp | 31 ++++++++++++++++++++++++++++++- - 1 file changed, 30 insertions(+), 1 deletion(-) - -diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp -index f65e941..6fed667 100644 ---- a/kdeui/icons/kiconloader.cpp -+++ b/kdeui/icons/kiconloader.cpp -@@ -909,7 +909,36 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const - const char * const ext[4] = { ".png", ".svgz", ".svg", ".xpm" }; - bool genericFallback = name.endsWith(QLatin1String("-x-generic")); - -- foreach(KIconThemeNode *themeNode, links) -+ // Do two passes through themeNodes. -+ // -+ // The first pass looks for an exact match in each themeNode one after the other. -+ // If one is found and it is an app icon then return that icon. -+ // -+ // In the next pass (assuming the first pass failed), it looks for exact matches -+ // and then generic fallbacks in each themeNode one after the other -+ // -+ // The reasoning is that application icons should always match exactly, all other -+ // icons may fallback. Since we do not know what the context is here when we start -+ // looking for it, we can only go by the path found. -+ foreach (KIconThemeNode *themeNode, links) { -+ for (int i = 0 ; i < 4 ; i++) { -+ icon = themeNode->theme->iconPath(name + ext[i], size, KIconLoader::MatchExact); -+ if (icon.isValid()) { -+ break; -+ } -+ -+ icon = themeNode->theme->iconPath(name + ext[i], size, KIconLoader::MatchBest); -+ if (icon.isValid()) { -+ break; -+ } -+ } -+ -+ if (icon.isValid() && icon.path.contains("/apps/")) { -+ return icon; -+ } -+ } -+ -+ foreach (KIconThemeNode *themeNode, links) - { - QString currentName = name; - --- -1.8.1.4 - - diff --git a/source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch b/source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch deleted file mode 100644 index b62818ed..00000000 --- a/source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 0edfd42151ad57322a10a24ab4971b638e220e6e Mon Sep 17 00:00:00 2001 -From: Aaron Seigo <aseigo@kde.org> -Date: Thu, 21 Feb 2013 18:14:54 +0100 -Subject: [PATCH 049/111] return, not break. copy/paste error - ---- - kdeui/icons/kiconloader.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp -index dba474d..ce6aeea 100644 ---- a/kdeui/icons/kiconloader.cpp -+++ b/kdeui/icons/kiconloader.cpp -@@ -947,12 +947,12 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const - for (int i = 0 ; i < 4 ; i++) { - icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchExact); - if (icon.isValid()) { -- break; -+ return icon; - } - - icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchBest); - if (icon.isValid()) { -- break; -+ return icon; - } - } - //kDebug(264) << "Looking up" << currentName; --- -1.8.1.4 - diff --git a/source/kde/patch/kdepim.patch b/source/kde/patch/kdepim.patch deleted file mode 100644 index 48c25961..00000000 --- a/source/kde/patch/kdepim.patch +++ /dev/null @@ -1,6 +0,0 @@ -# Install Kleopatra headers, needed by kopete-cryptography: -# This used to be fixed? -zcat $CWD/patch/kdepim/kdepim-install_kleopatra_headers.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Support TLS v1.1 and TLS v1.2: -zcat $CWD/patch/kdepim/libkf5ksieve-16.04.3.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch b/source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch deleted file mode 100644 index 8960ab81..00000000 --- a/source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch +++ /dev/null @@ -1,122 +0,0 @@ -diff -up kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt ---- kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600 -+++ kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt 2013-11-16 13:17:30.289810575 -0600 -@@ -6,3 +6,7 @@ add_subdirectory(gui) - - add_subdirectory(tests) - -+install( -+ FILES kleopatraclient_export.h -+ DESTINATION ${INCLUDE_INSTALL_DIR}/libkleopatraclient -+ ) -diff -up kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt ---- kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600 -+++ kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt 2013-11-16 13:17:30.290810557 -0600 -@@ -72,3 +72,13 @@ else() - endif() - - install(TARGETS kleopatraclientcore ${INSTALL_TARGETS_DEFAULT_ARGS}) -+ -+install( -+ FILES -+ initialization.h -+ command.h -+ selectcertificatecommand.h -+ signencryptfilescommand.h -+ decryptverifyfilescommand.h -+ DESTINATION ${INCLUDE_INSTALL_DIR}/libkleopatraclient/core -+ ) -diff -up kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt ---- kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600 -+++ kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt 2013-11-16 13:17:30.290810557 -0600 -@@ -16,3 +16,9 @@ set_target_properties(kleopatraclientgui - ) - - install(TARGETS kleopatraclientgui ${INSTALL_TARGETS_DEFAULT_ARGS}) -+ -+install( -+ FILES -+ certificaterequester.h -+ DESTINATION ${INCLUDE_INSTALL_DIR}/libkleopatraclient/gui -+ ) -diff -up kdepim-4.11.90/libkleo/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/libkleo/CMakeLists.txt ---- kdepim-4.11.90/libkleo/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600 -+++ kdepim-4.11.90/libkleo/CMakeLists.txt 2013-11-16 13:17:30.290810557 -0600 -@@ -121,3 +121,61 @@ install ( FILES libkleopatrarc-win32.des - else () - install ( FILES libkleopatrarc.desktop DESTINATION ${CONFIG_INSTALL_DIR} RENAME libkleopatrarc ) - endif () -+ -+install( FILES -+ kleo/kleo_export.h -+ kleo/enum.h -+ kleo/oidmap.h -+ kleo/cryptobackend.h -+ kleo/cryptobackendfactory.h -+ kleo/cryptoconfig.h -+ kleo/dn.h -+ kleo/job.h -+ kleo/keylistjob.h -+ kleo/keygenerationjob.h -+ kleo/abstractimportjob.h -+ kleo/importjob.h -+ kleo/importfromkeyserverjob.h -+ kleo/exportjob.h -+ kleo/changeexpiryjob.h -+ kleo/changeownertrustjob.h -+ kleo/downloadjob.h -+ kleo/deletejob.h -+ kleo/encryptjob.h -+ kleo/decryptjob.h -+ kleo/signjob.h -+ kleo/specialjob.h -+ kleo/verifydetachedjob.h -+ kleo/verifyopaquejob.h -+ kleo/decryptverifyjob.h -+ kleo/signencryptjob.h -+ kleo/signkeyjob.h -+ kleo/adduseridjob.h -+ kleo/refreshkeysjob.h -+ kleo/multideletejob.h -+ kleo/hierarchicalkeylistjob.h -+ kleo/keyfilter.h -+ kleo/keyfiltermanager.h -+ kleo/changepasswdjob.h -+ kleo/checksumdefinition.h -+ kleo/exception.h -+ kleo/kconfigbasedkeyfilter.h -+ kleo/listallkeysjob.h -+ kleo/stl_util.h -+ DESTINATION ${INCLUDE_INSTALL_DIR}/kleo COMPONENT Devel) -+ -+install ( FILES -+ ui/kdhorizontalline.h -+ ui/messagebox.h -+ ui/progressbar.h -+ ui/progressdialog.h -+ ui/keylistview.h -+ ui/keyselectiondialog.h -+ ui/keyrequester.h -+ ui/keyapprovaldialog.h -+ ui/dnattributeorderconfigwidget.h -+ ui/cryptoconfigmodule.h -+ ui/cryptoconfigdialog.h -+ ui/directoryserviceswidget.h -+ ui/filenamerequester.h -+ DESTINATION ${INCLUDE_INSTALL_DIR}/kleo/ui COMPONENT Devel) -diff -up kdepim-4.11.90/libkpgp/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/libkpgp/CMakeLists.txt ---- kdepim-4.11.90/libkpgp/CMakeLists.txt.install_kleopatra_headers 2013-11-16 13:17:30.290810557 -0600 -+++ kdepim-4.11.90/libkpgp/CMakeLists.txt 2013-11-16 13:20:55.258111864 -0600 -@@ -35,3 +35,11 @@ add_subdirectory( tests ) - install(FILES kconf_update/kpgp.upd DESTINATION ${KCONF_UPDATE_INSTALL_DIR}) - install(PROGRAMS kconf_update/kpgp-3.1-upgrade-address-data.pl DESTINATION ${KCONF_UPDATE_INSTALL_DIR}) - -+install(FILES -+ kpgp.h -+ kpgpbase.h -+ kpgpblock.h -+ kpgpkey.h -+ kpgpui.h -+ libkpgp_export.h -+ DESTINATION ${INCLUDE_INSTALL_DIR}/kpgp COMPONENT Devel ) - diff --git a/source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff b/source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff deleted file mode 100644 index ea1f1711..00000000 --- a/source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./libksieve/kmanagesieve/session.cpp.orig 2015-06-25 12:47:38.000000000 -0500 -+++ ./libksieve/kmanagesieve/session.cpp 2019-11-08 15:49:06.212790078 -0600 -@@ -368,7 +368,7 @@ - m_sslCheck->setInterval(60*1000); - connect(m_sslCheck, SIGNAL(timeout()), this, SLOT(slotSslTimeout())); - } -- m_socket->setAdvertisedSslVersion( KTcpSocket::TlsV1 ); -+ m_socket->setAdvertisedSslVersion( KTcpSocket::SecureProtocols ); - m_socket->ignoreSslErrors(); - connect(m_socket, SIGNAL(encrypted()), SLOT(slotEncryptedDone())); - m_sslCheck->start(); diff --git a/source/kde/patch/kdepimlibs.patch b/source/kde/patch/kdepimlibs.patch deleted file mode 100644 index 0939702f..00000000 --- a/source/kde/patch/kdepimlibs.patch +++ /dev/null @@ -1,4 +0,0 @@ -zcat $CWD/patch/kdepimlibs/kdepimlibs.libical3.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -# Support TLS v1.1 and TLS v1.2: -zcat $CWD/patch/kdepimlibs/kimap-16.04.2.diff.gz | patch -p1 -l --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff b/source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff deleted file mode 100644 index c3b8caf8..00000000 --- a/source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff +++ /dev/null @@ -1,184 +0,0 @@ ---- ./kcalcore/icalformat_p.cpp.orig 2015-06-24 07:43:14.000000000 -0500 -+++ ./kcalcore/icalformat_p.cpp 2017-12-05 23:03:44.742261940 -0600 -@@ -2301,7 +2301,6 @@ - t.second = 0; - - t.is_date = 1; -- t.is_utc = 0; - t.zone = 0; - - return t; -@@ -2322,8 +2321,7 @@ - t.minute = datetime.time().minute(); - t.second = datetime.time().second(); - } -- t.zone = 0; // zone is NOT set -- t.is_utc = datetime.isUtc() ? 1 : 0; -+ t.zone = datetime.isUtc() ? icaltimezone_get_utc_timezone() : 0; // zone is NOT set - - // _dumpIcaltime( t ); - -@@ -2398,7 +2396,7 @@ - } - - KTimeZone ktz; -- if (!t.is_utc) { -+ if (!icaltime_is_utc( t )) { - ktz = dt.timeZone(); - } - -@@ -2431,7 +2429,7 @@ - // _dumpIcaltime( t ); - - KDateTime::Spec timeSpec; -- if (t.is_utc || t.zone == icaltimezone_get_utc_timezone()) { -+ if (icaltime_is_utc( t ) || t.zone == icaltimezone_get_utc_timezone()) { - timeSpec = KDateTime::UTC; // the time zone is UTC - utc = false; // no need to convert to UTC - } else { ---- ./kcalcore/icaltimezones.cpp.orig 2015-06-24 07:43:14.000000000 -0500 -+++ ./kcalcore/icaltimezones.cpp 2017-12-05 23:03:55.482262829 -0600 -@@ -54,7 +54,7 @@ - { - return QDateTime(QDate(t.year, t.month, t.day), - QTime(t.hour, t.minute, t.second), -- (t.is_utc ? Qt::UTC : Qt::LocalTime)); -+ (icaltime_is_utc( t ) ? Qt::UTC : Qt::LocalTime)); - } - - // Maximum date for time zone data. -@@ -81,7 +81,6 @@ - t.second = local.time().second(); - t.is_date = 0; - t.zone = 0; -- t.is_utc = 0; - return t; - } - -@@ -886,7 +885,7 @@ - case ICAL_LASTMODIFIED_PROPERTY: - { - const icaltimetype t = icalproperty_get_lastmodified(p); -- if (t.is_utc) { -+ if (icaltime_is_utc( t )) { - data->d->lastModified = toQDateTime(t); - } else { - kDebug() << "LAST-MODIFIED not UTC"; -@@ -1259,7 +1258,7 @@ - // Convert DTSTART to QDateTime, and from local time to UTC - const QDateTime localStart = toQDateTime(dtstart); // local time - dtstart.second -= prevOffset; -- dtstart.is_utc = 1; -+ dtstart.zone = icaltimezone_get_utc_timezone(); - const QDateTime utcStart = toQDateTime(icaltime_normalize(dtstart)); // UTC - - transitions += utcStart; -@@ -1286,13 +1285,13 @@ - t.minute = dtstart.minute; - t.second = dtstart.second; - t.is_date = 0; -- t.is_utc = 0; // dtstart is in local time -+ t.zone = 0; // dtstart is in local time - } - // RFC2445 states that RDATE must be in local time, - // but we support UTC as well to be safe. -- if (!t.is_utc) { -+ if (!icaltime_is_utc( t )) { - t.second -= prevOffset; // convert to UTC -- t.is_utc = 1; -+ t.zone = icaltimezone_get_utc_timezone(); - t = icaltime_normalize(t); - } - transitions += toQDateTime(t); ---- ./kcal/icalformat_p.cpp.orig 2015-06-24 07:43:14.000000000 -0500 -+++ ./kcal/icalformat_p.cpp 2017-12-05 23:04:01.670263342 -0600 -@@ -2087,7 +2087,6 @@ - t.second = 0; - - t.is_date = 1; -- t.is_utc = 0; - t.zone = 0; - - return t; -@@ -2106,8 +2105,7 @@ - t.second = datetime.time().second(); - - t.is_date = 0; -- t.zone = 0; // zone is NOT set -- t.is_utc = datetime.isUtc() ? 1 : 0; -+ t.zone = datetime.isUtc() ? icaltimezone_get_utc_timezone() : 0; - - // _dumpIcaltime( t ); - -@@ -2174,7 +2172,7 @@ - } - - KTimeZone ktz; -- if ( !t.is_utc ) { -+ if ( !icaltime_is_utc( t ) ) { - ktz = dt.timeZone(); - } - -@@ -2207,7 +2205,7 @@ - // _dumpIcaltime( t ); - - KDateTime::Spec timeSpec; -- if ( t.is_utc || t.zone == icaltimezone_get_utc_timezone() ) { -+ if ( icaltime_is_utc( t ) || t.zone == icaltimezone_get_utc_timezone() ) { - timeSpec = KDateTime::UTC; // the time zone is UTC - utc = false; // no need to convert to UTC - } else { ---- ./kcal/icaltimezones.cpp.orig 2015-06-24 07:43:14.000000000 -0500 -+++ ./kcal/icaltimezones.cpp 2017-12-05 23:04:07.385263815 -0600 -@@ -50,7 +50,7 @@ - { - return QDateTime( QDate( t.year, t.month, t.day ), - QTime( t.hour, t.minute, t.second ), -- ( t.is_utc ? Qt::UTC : Qt::LocalTime ) ); -+ ( icaltime_is_utc( t ) ? Qt::UTC : Qt::LocalTime ) ); - } - - // Maximum date for time zone data. -@@ -77,7 +77,6 @@ - t.second = local.time().second(); - t.is_date = 0; - t.zone = 0; -- t.is_utc = 0; - return t; - } - -@@ -787,7 +786,7 @@ - case ICAL_LASTMODIFIED_PROPERTY: - { - icaltimetype t = icalproperty_get_lastmodified(p); -- if ( t.is_utc ) { -+ if ( icaltime_is_utc( t ) ) { - data->d->lastModified = toQDateTime( t ); - } else { - kDebug() << "LAST-MODIFIED not UTC"; -@@ -972,7 +971,7 @@ - // Convert DTSTART to QDateTime, and from local time to UTC - QDateTime localStart = toQDateTime( dtstart ); // local time - dtstart.second -= prevOffset; -- dtstart.is_utc = 1; -+ dtstart.zone = icaltimezone_get_utc_timezone(); - QDateTime utcStart = toQDateTime( icaltime_normalize( dtstart ) ); // UTC - - transitions += utcStart; -@@ -999,13 +998,13 @@ - t.minute = dtstart.minute; - t.second = dtstart.second; - t.is_date = 0; -- t.is_utc = 0; // dtstart is in local time -+ t.zone = 0; // dtstart is in local time - } - // RFC2445 states that RDATE must be in local time, - // but we support UTC as well to be safe. -- if ( !t.is_utc ) { -+ if ( !icaltime_is_utc( t ) ) { - t.second -= prevOffset; // convert to UTC -- t.is_utc = 1; -+ t.zone = icaltimezone_get_utc_timezone(); - t = icaltime_normalize( t ); - } - transitions += toQDateTime( t ); diff --git a/source/kde/patch/kdepimlibs/kimap-16.04.2.diff b/source/kde/patch/kdepimlibs/kimap-16.04.2.diff deleted file mode 100644 index dabca4e3..00000000 --- a/source/kde/patch/kdepimlibs/kimap-16.04.2.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./kimap/loginjob.cpp.orig 2015-06-24 07:43:14.000000000 -0500 -+++ ./kimap/loginjob.cpp 2019-11-08 15:44:05.687811741 -0600 -@@ -382,7 +382,7 @@ - - switch ( d->authState ) { - case LoginJobPrivate::StartTls: -- d->sessionInternal()->startSsl( KTcpSocket::TlsV1 ); -+ d->sessionInternal()->startSsl( KTcpSocket::SecureProtocols ); - break; - - case LoginJobPrivate::Capability: diff --git a/source/kde/patch/kdevelop-pg-qt.patch b/source/kde/patch/kdevelop-pg-qt.patch deleted file mode 100644 index 279fcd4b..00000000 --- a/source/kde/patch/kdevelop-pg-qt.patch +++ /dev/null @@ -1,2 +0,0 @@ -zcat $CWD/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch b/source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch deleted file mode 100644 index 7392fbf3..00000000 --- a/source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch +++ /dev/null @@ -1,53 +0,0 @@ -From ac587957cd0cabbc668604507e2cfebb6810ed09 Mon Sep 17 00:00:00 2001 -From: Milian Wolff <mail@milianw.de> -Date: Thu, 29 Nov 2012 15:56:40 +0100 -Subject: [PATCH 11/17] fix some warnings - ---- - kdev-pg/kdev-pg-code-gen.cpp | 2 +- - kdev-pg/kdev-pg-lexer.ll | 2 +- - kdev-pg/kdev-pg-parser.yy | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/kdev-pg/kdev-pg-code-gen.cpp b/kdev-pg/kdev-pg-code-gen.cpp -index e06c6be..badb461 100644 ---- a/kdev-pg/kdev-pg-code-gen.cpp -+++ b/kdev-pg/kdev-pg-code-gen.cpp -@@ -51,7 +51,7 @@ namespace KDevPG - - void generateCondition(const World::NodeSet& s, QTextStream& out) - { -- if(s.size() == 0 || s.size() == 1 && nodeCast<Model::ZeroItem*>(*s.begin()) != 0) -+ if(s.size() == 0 || (s.size() == 1 && nodeCast<Model::ZeroItem*>(*s.begin()) != 0)) - { - out << "true /*epsilon*/"; - return; -diff --git a/kdev-pg/kdev-pg-lexer.ll b/kdev-pg/kdev-pg-lexer.ll -index a0864af..9261d71 100644 ---- a/kdev-pg/kdev-pg-lexer.ll -+++ b/kdev-pg/kdev-pg-lexer.ll -@@ -425,7 +425,7 @@ void appendLineBuffer() - strcpy(yyTextLine+currentOffset, yytext + (yymoreFlag ? lastTextLeng : 0)); /* append current */ - /* strcpy is faster than strcat */ - -- Q_ASSERT(strlen(yyTextLine) < yyTextLineLeng); -+ Q_ASSERT(strlen(yyTextLine) < size_t(yyTextLineLeng)); - - lastTextLeng = strlen(yytext); - yymoreFlag = false; -diff --git a/kdev-pg/kdev-pg-parser.yy b/kdev-pg/kdev-pg-parser.yy -index d5a25f5..8f8d604 100644 ---- a/kdev-pg/kdev-pg-parser.yy -+++ b/kdev-pg/kdev-pg-parser.yy -@@ -309,7 +309,7 @@ opt_lexer_action - | T_CONTINUE { - r = "\nlxCONTINUE;\n"; - } -- | /* empty */ { r = "\nlxSKIP\n" } -+ | /* empty */ { r = "\nlxSKIP\n"; } - ; - - regexp --- -1.9.3 - diff --git a/source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff b/source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff deleted file mode 100644 index c18d1e4d..00000000 --- a/source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./kdev-pg/CMakeLists.txt.orig 2018-01-30 16:34:56.192631426 -0600 -+++ ./kdev-pg/CMakeLists.txt 2018-01-30 16:37:04.178643391 -0600 -@@ -79,7 +79,7 @@ - DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/kdev-pg-lexer.ll" - ${OPTIONAL_PARSER_HEADER_DEPENDENCY} - COMMAND ${FLEX_EXECUTABLE} -- ARGS --nounistd -o"${CMAKE_CURRENT_BINARY_DIR}/kdev-pg-lexer.cc" -+ ARGS --yymore --nounistd -o"${CMAKE_CURRENT_BINARY_DIR}/kdev-pg-lexer.cc" - "${CMAKE_CURRENT_SOURCE_DIR}/kdev-pg-lexer.ll" - ) - diff --git a/source/kde/patch/kdewebdev.patch b/source/kde/patch/kdewebdev.patch deleted file mode 100644 index 2abc80be..00000000 --- a/source/kde/patch/kdewebdev.patch +++ /dev/null @@ -1,5 +0,0 @@ -# Make it find tidy: -zcat $CWD/patch/kdewebdev/include-tidy.patch.gz \ - | sed -e "s#/tmp/package-kdewebdev#${SLACK_KDE_BUILD_DIR}/${PKGNAME}/package-kdewebdev#" \ - | patch -p0 --verbose \ - || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/kdewebdev/include-tidy.patch b/source/kde/patch/kdewebdev/include-tidy.patch deleted file mode 100644 index fd4de940..00000000 --- a/source/kde/patch/kdewebdev/include-tidy.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- klinkstatus/src/tidy/tidyx.h.orig 2009-09-03 09:55:38.886267704 -0500 -+++ klinkstatus/src/tidy/tidyx.h 2009-09-03 09:57:29.032269520 -0500 -@@ -48,8 +48,8 @@ - Created 2002-07-11 by Charles Reitzel - */ - --#include <tidy.h> --#include <buffio.h> -+#include "/tmp/package-kdewebdev/usr/include/tidy/tidy.h" -+#include "/tmp/package-kdewebdev/usr/include/tidy/buffio.h" - - #include <config-tidy.h> - diff --git a/source/kde/patch/kgamma.patch b/source/kde/patch/kgamma.patch deleted file mode 100644 index 1d681a2c..00000000 --- a/source/kde/patch/kgamma.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix build: -zcat $CWD/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff b/source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff deleted file mode 100644 index 1af9c2cb..00000000 --- a/source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- ./CMakeLists.txt.orig 2014-10-09 02:07:16.000000000 -0500 -+++ ./CMakeLists.txt 2018-01-29 22:34:52.281573013 -0600 -@@ -9,6 +9,7 @@ - # X11_xf86vmode discovery is done by FindX11 - macro_log_feature(X11_xf86vmode_FOUND "X11 Video Mode Extension (xf86vm)" "Required to build kgamma." "http://www.x.org" TRUE "" "") - -+include(CheckIncludeFiles) - check_include_files(strstream HAVE_STRSTREAM_H) - configure_file(config-kgamma.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kgamma.h) - diff --git a/source/kde/patch/konsole.patch b/source/kde/patch/konsole.patch deleted file mode 100644 index 286c7240..00000000 --- a/source/kde/patch/konsole.patch +++ /dev/null @@ -1,8 +0,0 @@ -# Fix scrollUp behavior: -zcat $CWD/patch/konsole/konsole.scrollup.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - -## We're not changing TERM to konsole after all. It's just the path of least -## resistance to revert the terminfo change that broke it, since it's affecting -## other systems as well (some of which we cannot patch). -## Set default TERM=konsole: -#zcat $CWD/patch/konsole/konsole.term.is.konsole.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/konsole/konsole.scrollup.diff b/source/kde/patch/konsole/konsole.scrollup.diff deleted file mode 100644 index c80a61ec..00000000 --- a/source/kde/patch/konsole/konsole.scrollup.diff +++ /dev/null @@ -1,43 +0,0 @@ -From 7ff23512fd6c6af1dba87083446f85baf75e9c71 Mon Sep 17 00:00:00 2001 -From: Kurt Hindenburg <kurt.hindenburg@gmail.com> -Date: Sat, 1 Jul 2017 19:12:39 -0400 -Subject: Correct scrollUp behavior - -CSI S escape sequence (SU, scroll up) ignored if number of lines to -scroll bigger than scrollable lines - -REVIEW: 130133 -BUG: 379318 ---- - src/Screen.cpp | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/src/Screen.cpp b/src/Screen.cpp -index 94841a9..15bd685 100644 ---- a/src/Screen.cpp -+++ b/src/Screen.cpp -@@ -746,13 +746,18 @@ QRect Screen::lastScrolledRegion() const - - void Screen::scrollUp(int from, int n) - { -- if (n <= 0 || from + n > _bottomMargin) return; -+ if (n <= 0) -+ return; -+ if (from > _bottomMargin) -+ return; -+ if (from + n > _bottomMargin) -+ n = _bottomMargin + 1 - from; - - _scrolledLines -= n; - _lastScrolledRegion = QRect(0, _topMargin, _columns - 1, (_bottomMargin - _topMargin)); - - //FIXME: make sure `topMargin', `bottomMargin', `from', `n' is in bounds. -- moveImage(loc(0, from), loc(0, from + n), loc(_columns - 1, _bottomMargin)); -+ moveImage(loc(0, from), loc(0, from + n), loc(_columns, _bottomMargin)); - clearImage(loc(0, _bottomMargin - n + 1), loc(_columns - 1, _bottomMargin), ' '); - } - --- -cgit v0.11.2 - - diff --git a/source/kde/patch/konsole/konsole.term.is.konsole.diff b/source/kde/patch/konsole/konsole.term.is.konsole.diff deleted file mode 100644 index edc7a49c..00000000 --- a/source/kde/patch/konsole/konsole.term.is.konsole.diff +++ /dev/null @@ -1,22 +0,0 @@ ---- ./src/Profile.cpp.orig 2014-10-31 23:17:02.000000000 -0500 -+++ ./src/Profile.cpp 2018-04-01 13:08:59.412975556 -0500 -@@ -150,7 +150,7 @@ - setProperty(Command, qgetenv("SHELL")); - setProperty(Arguments, QStringList() << qgetenv("SHELL")); - setProperty(Icon, "utilities-terminal"); -- setProperty(Environment, QStringList() << "TERM=xterm"); -+ setProperty(Environment, QStringList() << "TERM=konsole"); - setProperty(LocalTabTitleFormat, "%d : %n"); - setProperty(RemoteTabTitleFormat, "(%u) %H"); - setProperty(ShowTerminalSizeHint, true); ---- ./src/Pty.cpp.orig 2014-10-31 23:17:02.000000000 -0500 -+++ ./src/Pty.cpp 2018-04-01 13:08:52.282975632 -0500 -@@ -218,7 +218,7 @@ - - // extra safeguard to make sure $TERM is always set - if (!isTermEnvAdded) { -- setEnv("TERM", "xterm"); -+ setEnv("TERM", "konsole"); - } - } - diff --git a/source/kde/patch/kopete.patch b/source/kde/patch/kopete.patch deleted file mode 100644 index 8b0e2949..00000000 --- a/source/kde/patch/kopete.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix compiling with gcc 7: -zcat $CWD/patch/kopete/kopete-gcc6.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kopete/kopete-gcc6.patch b/source/kde/patch/kopete/kopete-gcc6.patch deleted file mode 100644 index 7a897113..00000000 --- a/source/kde/patch/kopete/kopete-gcc6.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 9f994ba6950117cbbeefc6027fa0a52ce74932e2 Mon Sep 17 00:00:00 2001 -From: Peter Levine <plevine457@gmail.com> -Date: Tue, 31 May 2016 17:40:42 +0200 -Subject: Fix compilation with GCC 6 - -REVIEW: 128006 -BUG: 363053 -FIXED-IN: 16.04.2 ---- - plugins/history2/history2logger.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/plugins/history2/history2logger.h b/plugins/history2/history2logger.h -index 13f159a..8083526 100644 ---- a/plugins/history2/history2logger.h -+++ b/plugins/history2/history2logger.h -@@ -94,7 +94,7 @@ public: - * from Kopete::Contact @param c in the given @param sens - */ - QList<Kopete::Message> readMessages(int lines, -- int offset=0, const Kopete::MetaContact *c=false, bool reverseOrder=true); -+ int offset=0, const Kopete::MetaContact *c=NULL, bool reverseOrder=true); - - /** - * Same as the following, but for one date. I did'nt reuse the above function --- -cgit v0.11.2 - diff --git a/source/kde/patch/krdc.patch b/source/kde/patch/krdc.patch deleted file mode 100644 index 54e82a09..00000000 --- a/source/kde/patch/krdc.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Allow for the use of xfreerdp >= 1.1.0: -zcat $CWD/patch/krdc/krdc_freerdp-1.1.0.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/krdc/krdc_freerdp-1.1.0.patch b/source/kde/patch/krdc/krdc_freerdp-1.1.0.patch deleted file mode 100644 index 75b51468..00000000 --- a/source/kde/patch/krdc/krdc_freerdp-1.1.0.patch +++ /dev/null @@ -1,184 +0,0 @@ -Support >=free-rdp-1.1.0. - -https://git.reviewboard.kde.org/r/115059/ - -diff --git a/rdp/rdpview.cpp b/rdp/rdpview.cpp -index 0d14e04691549e084b58501cd10ca2382ef25c63..9062ba5fa060284a679f0c9bc211ab7dd6972c0a 100644 ---- a/rdp/rdpview.cpp -+++ b/rdp/rdpview.cpp -@@ -158,71 +158,58 @@ bool RdpView::start() - width = this->parentWidget()->size().width(); - height = this->parentWidget()->size().height(); - } -- arguments << "-g" << QString::number(width) + 'x' + QString::number(height); -+ arguments << "-decorations"; // put this option first so we can detect xfreerdp < 1.1 -+ arguments << "/w:" + QString::number(width); -+ arguments << "/h:" + QString::number(height); - -- arguments << "-k" << keymapToXfreerdp(m_hostPreferences->keyboardLayout()); -+ arguments << "/kbd:" + keymapToXfreerdp(m_hostPreferences->keyboardLayout()); - - if (!m_url.userName().isEmpty()) { - // if username contains a domain, it needs to be set with another parameter - if (m_url.userName().contains('\\')) { - const QStringList splittedName = m_url.userName().split('\\'); -- arguments << "-d" << splittedName.at(0); -- arguments << "-u" << splittedName.at(1); -+ arguments << "/d:" + splittedName.at(0); -+ arguments << "/u:" + splittedName.at(1); - } else { -- arguments << "-u" << m_url.userName(); -+ arguments << "/u:" + m_url.userName(); - } - } else { -- arguments << "-u" << ""; -+ arguments << "-u:"; - } - -- if (!m_url.password().isNull()) -- arguments << "-p" << m_url.password(); -- -- arguments << "-D"; // request the window has no decorations -- arguments << "-X" << QString::number(m_container->winId()); -- arguments << "-a" << QString::number((m_hostPreferences->colorDepth() + 1) * 8); -- -- switch (m_hostPreferences->sound()) { -- case 1: -- arguments << "-o"; -- break; -- case 0: -- arguments << "--plugin" << "rdpsnd"; -- break; -- case 2: -- default: -- break; -- } -+ arguments << "/parent-window:" + QString::number(m_container->winId()); -+ arguments << "/bpp:" + QString::number((m_hostPreferences->colorDepth() + 1) * 8); -+ arguments << "/audio-mode:" + m_hostPreferences->sound(); - - if (!m_hostPreferences->shareMedia().isEmpty()) { - QStringList shareMedia; -- shareMedia << "--plugin" << "rdpdr" << "--data" << "disk:media:" + m_hostPreferences->shareMedia() << "--"; -+ shareMedia << "/drive:media," + m_hostPreferences->shareMedia(); - arguments += shareMedia; - } - - QString performance; - switch (m_hostPreferences->performance()) { - case 0: -- performance = 'm'; -+ performance = "modem"; - break; - case 1: -- performance = 'b'; -+ performance = "broadband"; - break; - case 2: -- performance = 'l'; -+ performance = "lan"; - break; - default: - break; - } - -- arguments << "-x" << performance; -+ arguments << "/network:" + performance; - - if (m_hostPreferences->console()) { -- arguments << "-0"; -+ arguments << "/admin"; - } - - if (m_hostPreferences->remoteFX()) { -- arguments << "--rfx"; -+ arguments << "/rfx"; - } - - if (!m_hostPreferences->extraOptions().isEmpty()) { -@@ -233,16 +220,21 @@ bool RdpView::start() - // krdc has no support for certificate management yet; it would not be possbile to connect to any host: - // "The host key for example.com has changed" ... - // "Add correct host key in ~/.freerdp/known_hosts to get rid of this message." -- arguments << "--ignore-certificate"; -+ arguments << "/cert-ignore"; - - // clipboard sharing is activated in KRDC; user can disable it at runtime -- arguments << "--plugin" << "cliprdr"; -+ arguments << "/clipboard"; - -- arguments << "-t" << QString::number(m_port); -- arguments << m_host; -+ arguments << "/port:" + QString::number(m_port); -+ arguments << "/v:" + m_host; - - kDebug(5012) << "Starting xfreerdp with arguments:" << arguments; - -+ //avoid printing the password in debug -+ if (!m_url.password().isNull()) { -+ arguments << "/p:" + m_url.password(); -+ } -+ - setStatus(Connecting); - - connect(m_process, SIGNAL(error(QProcess::ProcessError)), SLOT(processError(QProcess::ProcessError))); -@@ -302,7 +294,7 @@ void RdpView::connectionError() - - void RdpView::processError(QProcess::ProcessError error) - { -- kDebug(5012) << "processError:" << error; -+ kDebug(5012) << error; - if (m_quitFlag) // do not try to show error messages while quitting (prevent crashes) - return; - -@@ -319,33 +311,13 @@ void RdpView::processError(QProcess::ProcessError error) - void RdpView::receivedStandardError() - { - const QString output(m_process->readAllStandardError()); -- kDebug(5012) << "receivedStandardError:" << output; -- QString line; -- int i = 0; -- while (!(line = output.section('\n', i, i)).isEmpty()) { -- -- // the following error is issued by freerdp because of a bug in freerdp 1.0.1 and below; -- // see: https://github.com/FreeRDP/FreeRDP/pull/576 -- //"X Error of failed request: BadWindow (invalid Window parameter) -- // Major opcode of failed request: 7 (X_ReparentWindow) -- // Resource id in failed request: 0x71303348 -- // Serial number of failed request: 36 -- // Current serial number in output stream: 36" -- if (line.contains(QLatin1String("X_ReparentWindow"))) { -- KMessageBox::error(0, i18n("The version of \"xfreerdp\" you are using is too old.\n" -- "xfreerdp 1.0.2 or greater is required."), -- i18n("RDP Failure")); -- connectionError(); -- return; -- } -- i++; -- } -+ kDebug(5012) << output; - } - - void RdpView::receivedStandardOutput() - { - const QString output(m_process->readAllStandardOutput()); -- kDebug(5012) << "receivedStandardOutput:" << output; -+ kDebug(5012) << output; - QString line; - int i = 0; - while (!(line = output.section('\n', i, i)).isEmpty()) { -@@ -373,6 +345,14 @@ void RdpView::receivedStandardOutput() - return; - } - -+ // we no longer support freerdp < 1.1, we only support versions with the new interface -+ if (line.contains(QLatin1String("invalid option: -decorations"))) { -+ KMessageBox::error(0, i18n("The version of \"xfreerdp\" you are using is too old.\n" -+ "xfreerdp 1.1 or greater is required."), -+ i18n("RDP Failure")); -+ connectionError(); -+ return; -+ } - i++; - } - } diff --git a/source/kde/patch/kscreen.patch b/source/kde/patch/kscreen.patch deleted file mode 100644 index c369b4d9..00000000 --- a/source/kde/patch/kscreen.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Kludge around a strange failure in setting up the unit tests: -zcat $CWD/patch/kscreen/kscreen.broken.test.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kscreen/kscreen.broken.test.diff b/source/kde/patch/kscreen/kscreen.broken.test.diff deleted file mode 100644 index 5b102d96..00000000 --- a/source/kde/patch/kscreen/kscreen.broken.test.diff +++ /dev/null @@ -1,8 +0,0 @@ ---- ./tests/CMakeLists.txt.orig 2013-11-22 04:15:16.000000000 -0600 -+++ ./tests/CMakeLists.txt 2015-10-24 18:51:44.332554749 -0500 -@@ -17,4 +17,3 @@ - - target_link_libraries(testgenerator ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} kscreen) - --add_test(testgenerator ${CMAKE_CURRENT_BINARY_DIR}/testgenerator) -\ No newline at end of file diff --git a/source/kde/patch/ktorrent.patch b/source/kde/patch/ktorrent.patch deleted file mode 100644 index 0f75eabc..00000000 --- a/source/kde/patch/ktorrent.patch +++ /dev/null @@ -1,2 +0,0 @@ -zcat $CWD/patch/ktorrent/ktorrent.use.package.geoip.database.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/ktorrent/geoip.dat b/source/kde/patch/ktorrent/geoip.dat Binary files differdeleted file mode 100644 index be8b031f..00000000 --- a/source/kde/patch/ktorrent/geoip.dat +++ /dev/null diff --git a/source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff b/source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff deleted file mode 100644 index 0a9fd804..00000000 --- a/source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff +++ /dev/null @@ -1,37 +0,0 @@ ---- ./plugins/infowidget/geoipmanager.cpp.orig 2013-01-14 11:12:24.000000000 -0600 -+++ ./plugins/infowidget/geoipmanager.cpp 2019-03-17 15:14:38.020018110 -0500 -@@ -39,7 +39,7 @@ - #ifdef USE_SYSTEM_GEOIP - geo_ip = GeoIP_open_type(GEOIP_COUNTRY_EDITION, GEOIP_STANDARD); - #else -- geoip_data_file = KStandardDirs::locate("data", "ktorrent/geoip.dat"); -+ geoip_data_file = "/usr/share/apps/ktorrent/GeoIP/geoip.dat"; - if (geoip_data_file.isNull()) - geoip_data_file = KStandardDirs::locate("data", "ktorrent/GeoIP.dat"); - -@@ -54,12 +54,6 @@ - { - QFileInfo fi(geoip_data_file); - QDateTime now = QDateTime::currentDateTime(); -- if (fi.lastModified().daysTo(now) >= 30) -- { -- // if the last time the geoip file was modified, was more then -- // 30 days ago, redownload it -- downloadDataBase(); -- } - } - } - #endif -@@ -104,12 +98,6 @@ - - void GeoIPManager::downloadDataBase() - { --#ifndef USE_SYSTEM_GEOIP -- Out(SYS_INW|LOG_NOTICE) << "Downloading GeoIP database: " << geoip_url.prettyUrl() << endl; -- download_destination = kt::DataDir() + geoip_url.fileName(); -- KIO::CopyJob* job = KIO::copy(geoip_url,download_destination,KIO::Overwrite|KIO::HideProgressInfo); -- connect(job,SIGNAL(result(KJob*)),this,SLOT(databaseDownloadFinished(KJob*))); --#endif - } - - void GeoIPManager::databaseDownloadFinished(KJob* job) diff --git a/source/kde/patch/ktouch.patch b/source/kde/patch/ktouch.patch deleted file mode 100644 index 66b2cdf7..00000000 --- a/source/kde/patch/ktouch.patch +++ /dev/null @@ -1,2 +0,0 @@ -zcat $CWD/patch/ktouch/ktouch.performance.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/ktouch/ktouch.performance.diff b/source/kde/patch/ktouch/ktouch.performance.diff deleted file mode 100644 index 526294fe..00000000 --- a/source/kde/patch/ktouch/ktouch.performance.diff +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/src/declarativeitems/lessonpainter.cpp b/src/declarativeitems/lessonpainter.cpp -index dc8fc61..2c56c0c 100644 ---- a/src/declarativeitems/lessonpainter.cpp -+++ b/src/declarativeitems/lessonpainter.cpp -@@ -236,8 +236,7 @@ void LessonPainter::updateTrainingStatus() - const QString referenceLine = m_trainingLineCore->referenceLine(); - const QString actualLine = m_trainingLineCore->actualLine(); - const QString preeditString = m_trainingLineCore->preeditString(); -- const QTextBlock block = m_doc->findBlockByNumber(m_currentLine + 1); -- const int blockPosition = block.position(); -+ const int blockPosition = m_doc->findBlockByNumber(m_currentLine + 1).position(); - - for (int linePos = 0; linePos < referenceLine.length(); linePos++) - { -@@ -257,8 +256,14 @@ void LessonPainter::updateTrainingStatus() - - cursor.setPosition(charPosition, QTextCursor::MoveAnchor); - cursor.setPosition(charPosition + 1, QTextCursor::KeepAnchor); -- cursor.deleteChar(); -- cursor.insertText(QString(displayedChar), charFormat); -+ -+ /* QUICKFIX: Using the charFormat to decide whether a char must be repainted or not. -+ * Not nice but quite efficient ... */ -+ if (cursor.charFormat() != charFormat) -+ { -+ cursor.deleteChar(); -+ cursor.insertText(QString(displayedChar), charFormat); -+ } - } - - invalidateImageCache(); diff --git a/source/kde/patch/kuser.patch b/source/kde/patch/kuser.patch deleted file mode 100644 index 70edfd20..00000000 --- a/source/kde/patch/kuser.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix build: -zcat $CWD/patch/kuser/kuser.cmake.include.checkincludefiles.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff b/source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff deleted file mode 100644 index 264810f6..00000000 --- a/source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- ./CMakeLists.txt.orig 2013-08-03 23:22:20.000000000 -0500 -+++ ./CMakeLists.txt 2018-01-30 14:37:52.197974764 -0600 -@@ -35,6 +35,7 @@ - set(KU_FIRSTGID 500 CACHE STRING "First GID of normal users") - set(KU_USERPRIVATEGROUP true CACHE STRING "User private groups by default") - -+include(CheckIncludeFiles) - check_include_files(shadow.h HAVE_SHADOW_H) - check_include_files(crypt.h HAVE_CRYPT_H) - check_include_files(sys/stat.h HAVE_SYS_STAT_H) diff --git a/source/kde/patch/libkscreen.patch b/source/kde/patch/libkscreen.patch deleted file mode 100644 index 1c696f88..00000000 --- a/source/kde/patch/libkscreen.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Kludge around a strange failure in setting up the unit tests: -zcat $CWD/patch/libkscreen/libkscreen.broken.test.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/libkscreen/libkscreen.broken.test.diff b/source/kde/patch/libkscreen/libkscreen.broken.test.diff deleted file mode 100644 index 30e179d5..00000000 --- a/source/kde/patch/libkscreen/libkscreen.broken.test.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- ./tests/CMakeLists.txt.orig 2014-08-03 16:14:49.000000000 -0500 -+++ ./tests/CMakeLists.txt 2015-10-24 12:55:55.767426554 -0500 -@@ -6,7 +6,6 @@ - include_directories(${QT_INCLUDES} ${KDE4_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR} ${X11_Xrandr_INCLUDE_PATH}) - kde4_add_unit_test(${_testname} ${_testname}.cpp ${_testname}.moc) - target_link_libraries(${_testname} ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} kscreen) -- add_test(${_testname} ${CMAKE_CURRENT_BINARY_DIR}/${_testname}) - endforeach(_testname) - endmacro(KSCREEN_TESTS) - diff --git a/source/kde/patch/perlqt.patch b/source/kde/patch/perlqt.patch deleted file mode 100644 index b1aaf264..00000000 --- a/source/kde/patch/perlqt.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix build: -zcat $CWD/patch/perlqt/perlqt.gcc6.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/perlqt/perlqt.gcc6.diff b/source/kde/patch/perlqt/perlqt.gcc6.diff deleted file mode 100644 index 9a6e42ea..00000000 --- a/source/kde/patch/perlqt/perlqt.gcc6.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./qtcore/src/util.cpp.orig 2014-11-04 16:59:39.000000000 -0600 -+++ ./qtcore/src/util.cpp 2017-10-04 22:25:36.055839800 -0500 -@@ -2251,7 +2251,7 @@ - methcache.insert(mcid, new Smoke::ModuleIndex(mi)); - } - -- static smokeperl_object nothis = { 0, 0, 0, false }; -+ static smokeperl_object nothis = { 0, 0, 0, NULL }; - smokeperl_object* call_this = 0; - if ( SvOK(sv_this) ) { - call_this = sv_obj_info( sv_this ); diff --git a/source/kde/patch/plasma-nm.patch b/source/kde/patch/plasma-nm.patch deleted file mode 100644 index 9997fe41..00000000 --- a/source/kde/patch/plasma-nm.patch +++ /dev/null @@ -1,2 +0,0 @@ -zcat $CWD/patch/plasma-nm/plasma-nm.nm.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/plasma-nm/plasma-nm.nm.diff b/source/kde/patch/plasma-nm/plasma-nm.nm.diff deleted file mode 100644 index 91efa849..00000000 --- a/source/kde/patch/plasma-nm/plasma-nm.nm.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- ./CMakeLists.txt.orig 2015-04-07 08:20:28.000000000 -0500 -+++ ./CMakeLists.txt 2015-10-24 18:12:52.316604417 -0500 -@@ -49,6 +49,7 @@ - ${CMAKE_CURRENT_SOURCE_DIR}/libs - ${CMAKE_CURRENT_SOURCE_DIR}/libs/editor/ - ${NETWORKMANAGER_INCLUDE_DIRS} -+ ${NM-UTIL_INCLUDE_DIRS} - ${NETWORKMANAGERQT_INCLUDE_DIRS} - ${KDE4_INCLUDES}) - diff --git a/source/kde/patch/print-manager.patch b/source/kde/patch/print-manager.patch deleted file mode 100644 index 46e0f2b9..00000000 --- a/source/kde/patch/print-manager.patch +++ /dev/null @@ -1 +0,0 @@ -zcat $CWD/patch/print-manager/print-manager.fix.build.against.cups22.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff b/source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff deleted file mode 100644 index 53010fba..00000000 --- a/source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff +++ /dev/null @@ -1,24 +0,0 @@ -From=20971e75934bc64627226d61565f68aff3c9b0000b Mon Sep 17 00:00:00 2001 -From: Rex Dieter <rdieter@math.unl.edu> -Date: Mon, 12 Sep 2016 11:58:12 -0500 -Subject: [PATCH] fix FTBFS against cups-2.2 - -cupsGetPPD2 moved to cups/ppd.h - -BUG: 366483 -FIXED-IN: 16.08.2 ---- - libkcups/KCupsRequest.cpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/libkcups/KCupsRequest.cpp b/libkcups/KCupsRequest.cpp -index 39a5cf5..3625bec 100644 ---- a/libkcups/KCupsRequest.cpp -+++ b/libkcups/KCupsRequest.cpp -@@ -29,6 +29,7 @@ - #include <QStringBuilder> - - #include <cups/adminutil.h> -+#include <cups/ppd.h> - - #define CUPS_DATADIR "/usr/share/cups" diff --git a/source/kde/patch/pykde4.patch b/source/kde/patch/pykde4.patch deleted file mode 100644 index 68be53e8..00000000 --- a/source/kde/patch/pykde4.patch +++ /dev/null @@ -1,6 +0,0 @@ -zcat $CWD/patch/pykde4/pykde4.solid.cmake.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/pykde4/0003-Fix-build-with-sip-4.19.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/pykde4/fix_kpythonpluginfactory_build.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } -zcat $CWD/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch b/source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch deleted file mode 100644 index 61ef78df..00000000 --- a/source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch +++ /dev/null @@ -1,599 +0,0 @@ -From 2d1eadf5d0148c88cb4393993f0269e196cbe7b1 Mon Sep 17 00:00:00 2001 -From: Johannes Huber <johu@gentoo.org> -Date: Mon, 9 Jan 2017 11:52:12 +0100 -Subject: [PATCH 3/3] Fix build with sip 4.19 - -REVIEW: 129799 ---- - sip/dnssd/remoteservice.sip | 10 +++++----- - sip/kdecore/kmimetype.sip | 10 +++++----- - sip/kdecore/ksharedconfig.sip | 4 ++-- - sip/kdecore/ksycocaentry.sip | 10 +++++----- - sip/kdecore/typedefs.sip | 30 +++++++++++++++--------------- - sip/kdeui/kcompletion.sip | 10 +++++----- - sip/kdeui/kxmlguibuilder.sip | 4 ++-- - sip/kio/kservicegroup.sip | 10 +++++----- - sip/ktexteditor/markinterface.sip | 10 +++++----- - sip/phonon/objectdescription.sip | 10 +++++----- - sip/soprano/pluginmanager.sip | 30 +++++++++++++++--------------- - 11 files changed, 69 insertions(+), 69 deletions(-) - -diff --git a/sip/dnssd/remoteservice.sip b/sip/dnssd/remoteservice.sip -index 5c5397a..44db887 100644 ---- a/sip/dnssd/remoteservice.sip -+++ b/sip/dnssd/remoteservice.sip -@@ -66,7 +66,7 @@ protected: - DNSSD::RemoteService::Ptr *t = new DNSSD::RemoteService::Ptr (sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_DNSSD_RemoteService, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromNewType(t->data(), sipType_DNSSD_RemoteService, sipTransferObj)) == NULL) - { - Py_DECREF(l); - delete t; -@@ -88,7 +88,7 @@ protected: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -99,11 +99,11 @@ protected: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state); -+ sipReleaseType(t, sipType_DNSSD_RemoteService, state); - - delete ql; - return 0; -@@ -113,7 +113,7 @@ protected: - - ql->append(*tptr); - -- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state); -+ sipReleaseType(t, sipType_DNSSD_RemoteService, state); - } - - *sipCppPtr = ql; -diff --git a/sip/kdecore/kmimetype.sip b/sip/kdecore/kmimetype.sip -index b2d21f7..2945210 100644 ---- a/sip/kdecore/kmimetype.sip -+++ b/sip/kdecore/kmimetype.sip -@@ -100,7 +100,7 @@ public: - KMimeType::Ptr *t = new KMimeType::Ptr (sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_KMimeType, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromNewType(t->data(), sipType_KMimeType, sipTransferObj)) == NULL) - { - Py_DECREF(l); - delete t; -@@ -122,7 +122,7 @@ public: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KMimeType, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KMimeType, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -133,11 +133,11 @@ public: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- KMimeType *t = reinterpret_cast<KMimeType *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KMimeType, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ KMimeType *t = reinterpret_cast<KMimeType *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KMimeType, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_KMimeType, state); -+ sipReleaseType(t, sipType_KMimeType, state); - - delete ql; - return 0; -@@ -147,7 +147,7 @@ public: - - ql->append(*tptr); - -- sipReleaseInstance(t, sipClass_KMimeType, state); -+ sipReleaseType(t, sipType_KMimeType, state); - } - - *sipCppPtr = ql; -diff --git a/sip/kdecore/ksharedconfig.sip b/sip/kdecore/ksharedconfig.sip -index 54b1599..9442d80 100644 ---- a/sip/kdecore/ksharedconfig.sip -+++ b/sip/kdecore/ksharedconfig.sip -@@ -65,7 +65,7 @@ typedef KSharedConfig::Ptr KSharedConfigPtr; - KSharedConfigPtr kcpp = *sipCpp; - KSharedConfig *ksc = kcpp.data (); - ksc->ref.ref(); -- PyObject *pyKsc = sipConvertFromInstance(ksc, sipClass_KSharedConfig, sipTransferObj); -+ PyObject *pyKsc = sipConvertFromType(ksc, sipType_KSharedConfig, sipTransferObj); - return pyKsc; - %End - -@@ -74,7 +74,7 @@ typedef KSharedConfig::Ptr KSharedConfigPtr; - return 1; - - int state; -- KSharedConfig* ksc = (KSharedConfig *)sipConvertToInstance(sipPy, sipClass_KSharedConfig, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr); -+ KSharedConfig* ksc = (KSharedConfig *)sipConvertToType(sipPy, sipType_KSharedConfig, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr); - *sipCppPtr = new KSharedConfigPtr (ksc); - ksc->ref.deref(); - return sipGetState(sipTransferObj); -diff --git a/sip/kdecore/ksycocaentry.sip b/sip/kdecore/ksycocaentry.sip -index 4632e4a..ceb85fa 100644 ---- a/sip/kdecore/ksycocaentry.sip -+++ b/sip/kdecore/ksycocaentry.sip -@@ -83,7 +83,7 @@ private: - KSycocaEntry::Ptr *t = new KSycocaEntry::Ptr (sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_KSycocaEntry, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromNewType(t->data(), sipType_KSycocaEntry, sipTransferObj)) == NULL) - { - Py_DECREF(l); - delete t; -@@ -105,7 +105,7 @@ private: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KSycocaEntry, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KSycocaEntry, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -116,11 +116,11 @@ private: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- KSycocaEntry *t = reinterpret_cast<KSycocaEntry *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KSycocaEntry, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ KSycocaEntry *t = reinterpret_cast<KSycocaEntry *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KSycocaEntry, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_KSycocaEntry, state); -+ sipReleaseType(t, sipType_KSycocaEntry, state); - - delete ql; - return 0; -@@ -130,7 +130,7 @@ private: - - ql->append(*tptr); - -- sipReleaseInstance(t, sipClass_KSycocaEntry, state); -+ sipReleaseType(t, sipType_KSycocaEntry, state); - } - - *sipCppPtr = ql; -diff --git a/sip/kdecore/typedefs.sip b/sip/kdecore/typedefs.sip -index af53f85..23956b7 100644 ---- a/sip/kdecore/typedefs.sip -+++ b/sip/kdecore/typedefs.sip -@@ -397,8 +397,8 @@ template <TYPE1,TYPE2> - TYPE1 *t1 = new TYPE1(i.key()); - TYPE2 *t2 = new TYPE2(i.value()); - -- PyObject *t1obj = sipConvertFromNewInstance(t1, sipClass_TYPE1, sipTransferObj); -- PyObject *t2obj = sipConvertFromNewInstance(t2, sipClass_TYPE2, sipTransferObj); -+ PyObject *t1obj = sipConvertFromNewType(t1, sipType_TYPE1, sipTransferObj); -+ PyObject *t2obj = sipConvertFromNewType(t2, sipType_TYPE2, sipTransferObj); - - if (t1obj == NULL || t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0) - { -@@ -438,10 +438,10 @@ template <TYPE1,TYPE2> - - while (PyDict_Next(sipPy, &i, &t1obj, &t2obj)) - { -- if (!sipCanConvertToInstance(t1obj, sipClass_TYPE1, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(t1obj, sipType_TYPE1, SIP_NOT_NONE)) - return 0; - -- if (!sipCanConvertToInstance(t2obj, sipClass_TYPE2, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(t2obj, sipType_TYPE2, SIP_NOT_NONE)) - return 0; - } - -@@ -454,13 +454,13 @@ template <TYPE1,TYPE2> - { - int state1, state2; - -- TYPE1 *t1 = reinterpret_cast<TYPE1 *>(sipConvertToInstance(t1obj, sipClass_TYPE1, sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr)); -- TYPE2 *t2 = reinterpret_cast<TYPE2 *>(sipConvertToInstance(t2obj, sipClass_TYPE2, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr)); -+ TYPE1 *t1 = reinterpret_cast<TYPE1 *>(sipConvertToType(t1obj, sipType_TYPE1, sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr)); -+ TYPE2 *t2 = reinterpret_cast<TYPE2 *>(sipConvertToType(t2obj, sipType_TYPE2, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t1, sipClass_TYPE1, state1); -- sipReleaseInstance(t2, sipClass_TYPE2, state2); -+ sipReleaseType(t1, sipType_TYPE1, state1); -+ sipReleaseType(t2, sipType_TYPE2, state2); - - delete qm; - return 0; -@@ -468,8 +468,8 @@ template <TYPE1,TYPE2> - - qm->insert(*t1, *t2); - -- sipReleaseInstance(t1, sipClass_TYPE1, state1); -- sipReleaseInstance(t2, sipClass_TYPE2, state2); -+ sipReleaseType(t1, sipType_TYPE1, state1); -+ sipReleaseType(t2, sipType_TYPE2, state2); - } - - *sipCppPtr = qm; -@@ -669,7 +669,7 @@ template <TYPE*> - TYPE *t = (TYPE *)(sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromNewInstance(t, sipClass_TYPE, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromNewType(t, sipType_TYPE, sipTransferObj)) == NULL) - { - Py_DECREF(l); - delete t; -@@ -691,7 +691,7 @@ template <TYPE*> - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_TYPE, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -702,11 +702,11 @@ template <TYPE*> - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ TYPE *t = reinterpret_cast<TYPE *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_TYPE, state); -+ sipReleaseType(t, sipType_TYPE, state); - - delete qv; - return 0; -@@ -714,7 +714,7 @@ template <TYPE*> - - qv->append(t); - -- sipReleaseInstance(t, sipClass_TYPE, state); -+ sipReleaseType(t, sipType_TYPE, state); - } - - *sipCppPtr = qv; -diff --git a/sip/kdeui/kcompletion.sip b/sip/kdeui/kcompletion.sip -index f1d327f..938506a 100644 ---- a/sip/kdeui/kcompletion.sip -+++ b/sip/kdeui/kcompletion.sip -@@ -176,7 +176,7 @@ public: - #else - PyObject *kobj = PyInt_FromLong((int)i.key()); - #endif -- PyObject *tobj = sipConvertFromNewInstance(t, sipClass_KShortcut, sipTransferObj); -+ PyObject *tobj = sipConvertFromNewType(t, sipType_KShortcut, sipTransferObj); - - if (kobj == NULL || tobj == NULL || PyDict_SetItem(d, kobj, tobj) < 0) - { -@@ -213,7 +213,7 @@ public: - return 0; - - while (PyDict_Next(sipPy, &i, &kobj, &tobj)) -- if (!sipCanConvertToInstance(tobj, sipClass_KShortcut, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(tobj, sipType_KShortcut, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -229,11 +229,11 @@ public: - #else - int k = PyInt_AsLong(kobj); - #endif -- KShortcut *t = reinterpret_cast<KShortcut *>(sipConvertToInstance(tobj, sipClass_KShortcut, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ KShortcut *t = reinterpret_cast<KShortcut *>(sipConvertToType(tobj, sipType_KShortcut, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_KShortcut, state); -+ sipReleaseType(t, sipType_KShortcut, state); - - delete qm; - return 0; -@@ -241,7 +241,7 @@ public: - - qm->insert((KCompletionBase::KeyBindingType)k, *t); - -- sipReleaseInstance(t, sipClass_KShortcut, state); -+ sipReleaseType(t, sipType_KShortcut, state); - } - - *sipCppPtr = qm; -diff --git a/sip/kdeui/kxmlguibuilder.sip b/sip/kdeui/kxmlguibuilder.sip -index 41ae2aa..e4cf187 100644 ---- a/sip/kdeui/kxmlguibuilder.sip -+++ b/sip/kdeui/kxmlguibuilder.sip -@@ -49,10 +49,10 @@ QAction *containerAction; - PyObject *pyWidget; - PyObject *pyContainerAction; - -- if ((pyWidget = sipConvertFromNewInstance(res, sipClass_QWidget, NULL)) == NULL) -+ if ((pyWidget = sipConvertFromNewType(res, sipType_QWidget, NULL)) == NULL) - return NULL; - -- if ((pyContainerAction = sipConvertFromNewInstance(containerAction, sipClass_QAction, NULL)) == NULL) -+ if ((pyContainerAction = sipConvertFromNewType(containerAction, sipType_QAction, NULL)) == NULL) - return NULL; - - sipRes = Py_BuildValue ("NN", pyWidget, pyContainerAction); -diff --git a/sip/kio/kservicegroup.sip b/sip/kio/kservicegroup.sip -index a1ef981..1ddce37 100644 ---- a/sip/kio/kservicegroup.sip -+++ b/sip/kio/kservicegroup.sip -@@ -151,7 +151,7 @@ public: - KServiceGroup::SPtr *t = new KServiceGroup::SPtr (sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_KServiceGroup, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromNewType(t->data(), sipType_KServiceGroup, sipTransferObj)) == NULL) - { - Py_DECREF(l); - delete t; -@@ -173,7 +173,7 @@ public: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KServiceGroup, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KServiceGroup, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -184,11 +184,11 @@ public: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- KServiceGroup *t = reinterpret_cast<KServiceGroup *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KServiceGroup, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ KServiceGroup *t = reinterpret_cast<KServiceGroup *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KServiceGroup, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_KServiceGroup, state); -+ sipReleaseType(t, sipType_KServiceGroup, state); - - delete ql; - return 0; -@@ -198,7 +198,7 @@ public: - - ql->append(*tptr); - -- sipReleaseInstance(t, sipClass_KServiceGroup, state); -+ sipReleaseType(t, sipType_KServiceGroup, state); - } - - *sipCppPtr = ql; -diff --git a/sip/ktexteditor/markinterface.sip b/sip/ktexteditor/markinterface.sip -index d9b0ec9..888c506 100644 ---- a/sip/ktexteditor/markinterface.sip -+++ b/sip/ktexteditor/markinterface.sip -@@ -158,7 +158,7 @@ signals: - #else - PyObject *t1obj = PyInt_FromLong ((long)t1); - #endif -- PyObject *t2obj = sipConvertFromNewInstance(t2, sipClass_KTextEditor_Mark, sipTransferObj); -+ PyObject *t2obj = sipConvertFromNewType(t2, sipType_KTextEditor_Mark, sipTransferObj); - - if (t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0) - { -@@ -203,7 +203,7 @@ signals: - #endif - return 0; - -- if (!sipCanConvertToInstance(t2obj, sipClass_KTextEditor_Mark, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(t2obj, sipType_KTextEditor_Mark, SIP_NOT_NONE)) - return 0; - } - -@@ -221,11 +221,11 @@ signals: - #else - int t1 = PyInt_AS_LONG (t1obj); - #endif -- KTextEditor::Mark *t2 = reinterpret_cast<KTextEditor::Mark *>(sipConvertToInstance(t2obj, sipClass_KTextEditor_Mark, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr)); -+ KTextEditor::Mark *t2 = reinterpret_cast<KTextEditor::Mark *>(sipConvertToType(t2obj, sipType_KTextEditor_Mark, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t2, sipClass_KTextEditor_Mark, state2); -+ sipReleaseType(t2, sipType_KTextEditor_Mark, state2); - - delete qm; - return 0; -@@ -233,7 +233,7 @@ signals: - - qm->insert(t1, t2); - -- sipReleaseInstance(t2, sipClass_KTextEditor_Mark, state2); -+ sipReleaseType(t2, sipType_KTextEditor_Mark, state2); - } - - *sipCppPtr = qm; -diff --git a/sip/phonon/objectdescription.sip b/sip/phonon/objectdescription.sip -index 2b86d5e..015b2ef 100644 ---- a/sip/phonon/objectdescription.sip -+++ b/sip/phonon/objectdescription.sip -@@ -116,7 +116,7 @@ void registerMetaTypes (); - DNSSD::RemoteService::Ptr *t = new Phonon::ObjectDescription (sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_DNSSD_RemoteService, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromNewType(t->data(), sipType_DNSSD_RemoteService, sipTransferObj)) == NULL) - { - Py_DECREF(l); - delete t; -@@ -138,7 +138,7 @@ void registerMetaTypes (); - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -149,11 +149,11 @@ void registerMetaTypes (); - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state); -+ sipReleaseType(t, sipType_DNSSD_RemoteService, state); - - delete ql; - return 0; -@@ -163,7 +163,7 @@ void registerMetaTypes (); - - ql->append(*tptr); - -- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state); -+ sipReleaseType(t, sipType_DNSSD_RemoteService, state); - } - - *sipCppPtr = ql; -diff --git a/sip/soprano/pluginmanager.sip b/sip/soprano/pluginmanager.sip -index c2be1c3..fe990f8 100644 ---- a/sip/soprano/pluginmanager.sip -+++ b/sip/soprano/pluginmanager.sip -@@ -73,7 +73,7 @@ public: - Soprano::Backend* t = const_cast<Soprano::Backend*>(sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromInstance(t, sipClass_Soprano_Backend, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromType(t, sipType_Soprano_Backend, sipTransferObj)) == NULL) - { - Py_DECREF(l); - return NULL; -@@ -93,7 +93,7 @@ public: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Backend, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Backend, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -104,18 +104,18 @@ public: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- const Soprano::Backend*t = reinterpret_cast<const Soprano::Backend*>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Backend, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ const Soprano::Backend*t = reinterpret_cast<const Soprano::Backend*>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Backend, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(const_cast<Soprano::Backend*>(t), sipClass_Soprano_Backend, state); -+ sipReleaseType(const_cast<Soprano::Backend*>(t), sipType_Soprano_Backend, state); - - delete ql; - return 0; - } - ql->append(t); - -- sipReleaseInstance(const_cast<Soprano::Backend*>(t), sipClass_Soprano_Backend, state); -+ sipReleaseType(const_cast<Soprano::Backend*>(t), sipType_Soprano_Backend, state); - } - - *sipCppPtr = ql; -@@ -144,7 +144,7 @@ public: - Soprano::Parser* t = const_cast<Soprano::Parser*>(sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromInstance(t, sipClass_Soprano_Parser, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromType(t, sipType_Soprano_Parser, sipTransferObj)) == NULL) - { - Py_DECREF(l); - return NULL; -@@ -164,7 +164,7 @@ public: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Parser, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Parser, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -175,18 +175,18 @@ public: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- const Soprano::Parser*t = reinterpret_cast<const Soprano::Parser*>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Parser, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ const Soprano::Parser*t = reinterpret_cast<const Soprano::Parser*>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Parser, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(const_cast<Soprano::Parser*>(t), sipClass_Soprano_Parser, state); -+ sipReleaseType(const_cast<Soprano::Parser*>(t), sipType_Soprano_Parser, state); - - delete ql; - return 0; - } - ql->append(t); - -- sipReleaseInstance(const_cast<Soprano::Parser*>(t), sipClass_Soprano_Parser, state); -+ sipReleaseType(const_cast<Soprano::Parser*>(t), sipType_Soprano_Parser, state); - } - - *sipCppPtr = ql; -@@ -215,7 +215,7 @@ public: - Soprano::Serializer* t = const_cast<Soprano::Serializer*>(sipCpp->at(i)); - PyObject *tobj; - -- if ((tobj = sipConvertFromInstance(t, sipClass_Soprano_Serializer, sipTransferObj)) == NULL) -+ if ((tobj = sipConvertFromType(t, sipType_Soprano_Serializer, sipTransferObj)) == NULL) - { - Py_DECREF(l); - return NULL; -@@ -235,7 +235,7 @@ public: - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) -- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Serializer, SIP_NOT_NONE)) -+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Serializer, SIP_NOT_NONE)) - return 0; - - return 1; -@@ -246,18 +246,18 @@ public: - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int state; -- const Soprano::Serializer*t = reinterpret_cast<const Soprano::Serializer*>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Serializer, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); -+ const Soprano::Serializer*t = reinterpret_cast<const Soprano::Serializer*>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Serializer, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr)); - - if (*sipIsErr) - { -- sipReleaseInstance(const_cast<Soprano::Serializer*>(t), sipClass_Soprano_Serializer, state); -+ sipReleaseType(const_cast<Soprano::Serializer*>(t), sipType_Soprano_Serializer, state); - - delete ql; - return 0; - } - ql->append(t); - -- sipReleaseInstance(const_cast<Soprano::Serializer*>(t), sipClass_Soprano_Serializer, state); -+ sipReleaseType(const_cast<Soprano::Serializer*>(t), sipType_Soprano_Serializer, state); - } - - *sipCppPtr = ql; --- -2.9.3 - diff --git a/source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch b/source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch deleted file mode 100644 index a67888c8..00000000 --- a/source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- ./sip/kdecore/typedefs.sip.orig 2014-08-14 15:17:11.000000000 -0500 -+++ ./sip/kdecore/typedefs.sip 2019-07-31 14:22:50.591053652 -0500 -@@ -23,7 +23,7 @@ - - typedef long time_t; - --typedef ulong size_t; -+// typedef ulong size_t; - - typedef int ssize_t; - -@@ -1028,4 +1028,4 @@ - return sipGetState(sipTransferObj); - %End - }; --%End -\ No newline at end of file -+%End diff --git a/source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch b/source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch deleted file mode 100644 index 1cee8e79..00000000 --- a/source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -ur pykde4-4.14.3.old/sip/kio/kautomount.sip pykde4-4.14.3/sip/kio/kautomount.sip ---- pykde4-4.14.3.old/sip/kio/kautomount.sip 2014-08-14 22:17:11.000000000 +0200 -+++ pykde4-4.14.3/sip/kio/kautomount.sip 2017-02-25 19:17:16.511589230 +0100 -@@ -20,7 +20,7 @@ - // along with this program. If not, see <http://www.gnu.org/licenses/>. - - --class KAutoMount : QObject -+class KAutoMount : QObject /Abstract/ - { - %TypeHeaderCode - #include <kautomount.h> -@@ -42,7 +42,7 @@ - // KAutoMount - - --class KAutoUnmount : QObject -+class KAutoUnmount : QObject /Abstract/ - { - %TypeHeaderCode - #include <kautomount.h> diff --git a/source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff b/source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff deleted file mode 100644 index 71f5928c..00000000 --- a/source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff +++ /dev/null @@ -1,26 +0,0 @@ -From: Modestas Vainius <modax@debian.org> -Subject: Include Python.h first as Qt includes steal "slots" keyword -Forwarded: no -Origin: vendor -Last-Update: 2008-12-05 - -Index: pykde4-4.9.80/kpythonpluginfactory/kpythonpluginfactory.cpp -=================================================================== ---- pykde4-4.9.80.orig/kpythonpluginfactory/kpythonpluginfactory.cpp 2012-11-14 16:14:05.000000000 +0000 -+++ pykde4-4.9.80/kpythonpluginfactory/kpythonpluginfactory.cpp 2012-11-19 17:23:32.497203781 +0000 -@@ -18,6 +18,7 @@ - Boston, MA 02111-1307, USA. - */ - -+#include <Python.h> - #include <QtCore/QCoreApplication> - #include <QFileInfo> - #include <QDir> -@@ -25,7 +26,6 @@ - #include <klibloader.h> - #include <kstandarddirs.h> - #include <kcmodule.h> --#include <Python.h> - #include <kcomponentdata.h> - #include <kdebug.h> - diff --git a/source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch b/source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch deleted file mode 100644 index ffc5384d..00000000 --- a/source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up pykde4-4.14.3/sip/kdeui/kfontchooser.sip.me pykde4-4.14.3/sip/kdeui/kfontchooser.sip ---- pykde4-4.14.3/sip/kdeui/kfontchooser.sip.me 2018-01-17 13:16:50.738465947 +0100 -+++ pykde4-4.14.3/sip/kdeui/kfontchooser.sip 2018-01-17 13:28:24.665226258 +0100 -@@ -59,7 +59,7 @@ public: - - typedef QFlags<KFontChooser::DisplayFlag> DisplayFlags; - -- explicit KFontChooser (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::DisplayFrame, const QStringList& fontList = QStringList(), int visibleListSize = 8, Qt::CheckState* sizeIsRelativeState = 0) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::DisplayFrame, const QStringList& = QStringList(), int = 8, Qt::CheckState* = 0)]; -+ explicit KFontChooser (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::DisplayFrame, const QStringList& fontList = QStringList(), int visibleListSize = 8, Qt::CheckState sizeIsRelativeState = Qt::Unchecked) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::DisplayFrame, const QStringList& = QStringList(), int = 8, Qt::CheckState* = 0)]; - %MethodCode - Py_BEGIN_ALLOW_THREADS - sipCpp = new sipKFontChooser (a0, *a1, *a2, a3, &a4); -diff -up pykde4-4.14.3/sip/kdeui/kfontdialog.sip.me pykde4-4.14.3/sip/kdeui/kfontdialog.sip ---- pykde4-4.14.3/sip/kdeui/kfontdialog.sip.me 2018-01-17 13:18:31.112670465 +0100 -+++ pykde4-4.14.3/sip/kdeui/kfontdialog.sip 2018-01-17 13:28:00.121154351 +0100 -@@ -28,7 +28,7 @@ class KFontDialog : KDialog - - - public: -- explicit KFontDialog (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::NoDisplayFlags, const QStringList& fontlist = QStringList(), Qt::CheckState* sizeIsRelativeState = 0) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::NoDisplayFlags, const QStringList& = QStringList(), Qt::CheckState* = 0)]; -+ explicit KFontDialog (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::NoDisplayFlags, const QStringList& fontlist = QStringList(), Qt::CheckState sizeIsRelativeState = Qt::Unchecked) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::NoDisplayFlags, const QStringList& = QStringList(), Qt::CheckState* = 0)]; - %MethodCode - Py_BEGIN_ALLOW_THREADS - sipCpp= new sipKFontDialog (a0, *a1, *a2, &a3); diff --git a/source/kde/patch/pykde4/pykde4.solid.cmake.diff b/source/kde/patch/pykde4/pykde4.solid.cmake.diff deleted file mode 100644 index e4f6cdc7..00000000 --- a/source/kde/patch/pykde4/pykde4.solid.cmake.diff +++ /dev/null @@ -1,20 +0,0 @@ ---- ./CMakeLists.txt.orig 2014-08-14 15:17:11.000000000 -0500 -+++ ./CMakeLists.txt 2016-09-07 14:32:28.115226093 -0500 -@@ -166,7 +166,7 @@ - - file(GLOB kio_files_sip sip/kio/*.sip) - set(SIP_EXTRA_FILES_DEPEND ${kio_files_sip}) --add_sip_python_module(PyKDE4.kio sip/kio/kiomod.sip ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS}) -+add_sip_python_module(PyKDE4.kio sip/kio/kiomod.sip ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_SOLID_LIBS}) - - file(GLOB kutils_files_sip sip/kutils/*.sip) - set(SIP_EXTRA_FILES_DEPEND ${kutils_files_sip}) -@@ -190,7 +190,7 @@ - - file(GLOB dnssd_files_sip sip/dnssd/*.sip) - set(SIP_EXTRA_FILES_DEPEND ${dnssd_files_sip}) --add_sip_python_module(PyKDE4.dnssd sip/dnssd/dnssdmod.sip ${KDE4_KDNSSD_LIBS} ${QT_QTCORE_LIBRARY}) -+add_sip_python_module(PyKDE4.dnssd sip/dnssd/dnssdmod.sip ${KDE4_KDNSSD_LIBS} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY}) - - file(GLOB phonon_files_sip sip/phonon/*.sip) - set(SIP_EXTRA_FILES_DEPEND ${phonon_files_sip}) diff --git a/source/kde/patch/smokeqt.patch b/source/kde/patch/smokeqt.patch deleted file mode 100644 index a39121d4..00000000 --- a/source/kde/patch/smokeqt.patch +++ /dev/null @@ -1 +0,0 @@ -zcat $CWD/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff b/source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff deleted file mode 100644 index 6f94fec5..00000000 --- a/source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff +++ /dev/null @@ -1,7 +0,0 @@ ---- ./qsci/qscintilla2_includes.h.orig 2013-11-24 10:25:24.000000000 -0600 -+++ ./qsci/qscintilla2_includes.h 2019-07-31 16:42:20.264301942 -0500 -@@ -1,3 +1,4 @@ -+#include <stdint.h> /* for uintptr_t */ - #include <qsciabstractapis.h> - #include <qsciapis.h> - #include <qscicommand.h> diff --git a/source/kde/patch/strigi-multimedia.patch b/source/kde/patch/strigi-multimedia.patch deleted file mode 100644 index 8b03abd2..00000000 --- a/source/kde/patch/strigi-multimedia.patch +++ /dev/null @@ -1,3 +0,0 @@ -# Fix build: -zcat $CWD/patch/strigi-multimedia/strigi-multimedia_port.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } - diff --git a/source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch b/source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch deleted file mode 100644 index 21a29a03..00000000 --- a/source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -urB strigi-multimedia/CMakeLists.txt new/CMakeLists.txt ---- strigi-multimedia/CMakeLists.txt 2012-04-08 11:47:03.923386124 +0200 -+++ new/CMakeLists.txt 2012-04-08 12:29:05.807989600 +0200 -@@ -1,3 +1,5 @@ -+Project(strigi-multimedia) -+ - set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/) - find_package(Qt4 REQUIRED) - find_package(KDE4 REQUIRED) -@@ -5,12 +7,10 @@ - include(MacroLibrary) - - include_directories(${KDE4_INCLUDES} ${QT_INCLUDES}) -+add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS} ) - - include(CheckIncludeFileCXX) - --message (STATUS "port strigi-analyzer !!!") --if(KFILE_PLUGINS_PORTED) -- - macro_optional_find_package(Theora) - macro_log_feature(THEORA_FOUND "Theora" "A video codec intended for use within the Ogg's project's Ogg multimedia streaming system" "http://www.theora.org" FALSE "" "Required to build the Theora Strigi Analyzer.") - -@@ -35,5 +35,3 @@ - if (OGGVORBIS_FOUND) - add_subdirectory(ogg) - endif(OGGVORBIS_FOUND) -- --endif(KFILE_PLUGINS_PORTED) |