Hello community, here is the log from the commit of package kdesvn for openSUSE:Factory checked in at 2017-05-22 10:48:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kdesvn (Old) and /work/SRC/openSUSE:Factory/.kdesvn.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "kdesvn" Mon May 22 10:48:18 2017 rev:63 rq:497008 version:2.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kdesvn/kdesvn.changes 2017-02-15 10:04:53.508990633 +0100 +++ /work/SRC/openSUSE:Factory/.kdesvn.new/kdesvn.changes 2017-05-22 10:49:08.062952897 +0200 @@ -1,0 +2,6 @@ +Sat May 20 13:35:28 UTC 2017 - wbauer@tmo.at + +- Add fix-crash.patch to fix a crash when there's a '@' in the path + (kde#375655) + +------------------------------------------------------------------- New: ---- fix-crash.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdesvn.spec ++++++ --- /var/tmp/diff_new_pack.WMzo3o/_old 2017-05-22 10:49:08.590878487 +0200 +++ /var/tmp/diff_new_pack.WMzo3o/_new 2017-05-22 10:49:08.594877924 +0200 @@ -1,7 +1,7 @@ # # spec file for package kdesvn # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -26,6 +26,8 @@ Source: %{name}-%{version}.tar.xz # PATCH-FIX-UPSTREAM fix-startup.patch boo#1021486 -- fixes starting kdesvn from the application menu Patch: fix-startup.patch +# PATCH-FIX-UPSTREAM fix-crash.patch kde#375655 -- fixes crash when there's a '@' in the path +Patch1: fix-crash.patch BuildRequires: extra-cmake-modules BuildRequires: fdupes BuildRequires: kbookmarks-devel @@ -66,6 +68,7 @@ %prep %setup -q %patch -p1 +%patch1 -p1 %build %cmake_kf5 -d build ++++++ fix-crash.patch ++++++
From 921e6f656a265cf51fdde5b536e3d7acbf168a05 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher
Date: Mon, 27 Feb 2017 19:47:11 +0100 Subject: Bug 375655 - KDESVN related crash perhaps while right-clicking in Dolphin This happens when a '@' is in the path - '@' is interpreted as the revision separator inside subversion and must be quoted (with an additional '@' at the end)
--- src/kdesvnd/kdesvnd.cpp | 12 +++++++++--- src/svnqt/client_status.cpp | 4 ++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/kdesvnd/kdesvnd.cpp b/src/kdesvnd/kdesvnd.cpp index 9f9ea7d..d0382db 100644 --- a/src/kdesvnd/kdesvnd.cpp +++ b/src/kdesvnd/kdesvnd.cpp @@ -77,7 +77,10 @@ QStringList kdesvnd::getTopLevelActionMenu(const QStringList &urlList) const QList<QUrl> urls; urls.reserve(urlList.size()); Q_FOREACH(const QString &str, urlList) { - urls += QUrl(str); + if (str.contains(QLatin1Char('@'))) + urls += QUrl(str + QLatin1Char('@')); + else + urls += QUrl(str); } return getActionMenu(urls, true); @@ -89,7 +92,10 @@ QStringList kdesvnd::getActionMenu(const QStringList &urlList) const QList<QUrl> urls; urls.reserve(urlList.size()); Q_FOREACH(const QString &str, urlList) { - urls += QUrl(str); + if (str.contains(QLatin1Char('@'))) + urls += QUrl(str + QLatin1Char('@')); + else + urls += QUrl(str); } return getActionMenu(urls, false); } @@ -170,7 +176,7 @@ QStringList kdesvnd::getActionMenu(const QList<QUrl> &list, bool toplevel) const QStringList kdesvnd::getSingleActionMenu(const QString &what) const { QList<QUrl> l; - l.append(QUrl(what)); + l.append(QUrl(what.contains(QLatin1Char('@')) ? what + QLatin1Char('@') : what)); return getActionMenu(l, false); } diff --git a/src/svnqt/client_status.cpp b/src/svnqt/client_status.cpp index 53b6206..72b21db 100644 --- a/src/svnqt/client_status.cpp +++ b/src/svnqt/client_status.cpp @@ -419,6 +419,10 @@ Client_impl::info(const Path &_p, _buf, pool); checkErrorThrow(error); + if (!truepath) + { + throw ClientException("no path given!"); + } if (peg_revision.kind() == svn_opt_revision_unspecified) { if ((svn_path_is_url(_p.cstr())) && (pegr.kind == svn_opt_revision_unspecified)) { pegr.kind = svn_opt_revision_head; -- cgit v0.11.2