Hello community, here is the log from the commit of package kcachegrind for openSUSE:Factory checked in at 2017-03-16 09:40:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kcachegrind (Old) and /work/SRC/openSUSE:Factory/.kcachegrind.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kcachegrind" Thu Mar 16 09:40:42 2017 rev:48 rq:478292 version:16.12.3 Changes: -------- --- /work/SRC/openSUSE:Factory/kcachegrind/kcachegrind.changes 2017-01-23 11:37:39.327617987 +0100 +++ /work/SRC/openSUSE:Factory/.kcachegrind.new/kcachegrind.changes 2017-03-16 09:40:47.369088118 +0100 @@ -1,0 +2,21 @@ +Thu Mar 9 12:45:13 CET 2017 - lbeltr...@kde.org + +- Update to 16.12.3 + * New bugfix release + * For more details please see: + * https://www.kde.org/announcements/announce-applications-16.12.3.php +- Changes since 16.12.2: + * Fix Slot connections for recently added menu items + * Backport "Improve format detection" + * Fix detection of callgrind files for very long commands + + +------------------------------------------------------------------- +Thu Feb 9 07:25:37 UTC 2017 - lbeltr...@kde.org + +- Update to KDE Applications 16.12.2 + * KDE Applications 16.12.2 + * https://www.kde.org/announcements/announce-applications-16.12.2.php + + +------------------------------------------------------------------- Old: ---- kcachegrind-16.12.1.tar.xz New: ---- kcachegrind-16.12.3.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kcachegrind.spec ++++++ --- /var/tmp/diff_new_pack.H6geaX/_old 2017-03-16 09:40:48.008997509 +0100 +++ /var/tmp/diff_new_pack.H6geaX/_new 2017-03-16 09:40:48.012996943 +0100 @@ -22,7 +22,7 @@ License: GPL-2.0 and BSD-4-Clause and GFDL-1.2 Group: Development/Tools/Other Url: http://www.kde.org/ -Version: 16.12.1 +Version: 16.12.3 Release: 0 Source0: %{name}-%{version}.tar.xz BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ kcachegrind-16.12.1.tar.xz -> kcachegrind-16.12.3.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcachegrind-16.12.1/libcore/cachegrindloader.cpp new/kcachegrind-16.12.3/libcore/cachegrindloader.cpp --- old/kcachegrind-16.12.1/libcore/cachegrindloader.cpp 2016-11-16 21:59:42.000000000 +0100 +++ new/kcachegrind-16.12.3/libcore/cachegrindloader.cpp 2017-01-10 22:09:27.000000000 +0100 @@ -149,24 +149,32 @@ bool CachegrindLoader::canLoad(QIODevice* file) { - if (!file) return false; + if (!file) return false; - Q_ASSERT(file->isOpen()); + Q_ASSERT(file->isOpen()); - /* - * We recognize this as cachegrind/callgrind format if in the first - * 2047 bytes we see the string "\nevents:" - */ - char buf[2048]; - int read = file->read(buf,2047); - if (read < 0) - return false; - buf[read] = 0; - - QByteArray s = QByteArray::fromRawData(buf, read+1); - int pos = s.indexOf("events:"); - if (pos>0 && buf[pos-1] != '\n') pos = -1; - return (pos>=0); + /* + * We recognize this as cachegrind/callgrind format if in the first + * 2047 bytes we see the string "\nevents:" or "\ncreator: callgrind" + */ + char buf[2048]; + int read = file->read(buf,2047); + if (read < 0) + return false; + buf[read] = 0; + + QByteArray s = QByteArray::fromRawData(buf, read+1); + if (s.indexOf("# callgrind format\n") == 0) return true; + int pos = s.indexOf("events:"); + if (pos>0 && buf[pos-1] != '\n') pos = -1; + if (pos>=0) return true; + + // callgrind puts a "cmd:" line before "events:", and with big command + // lines, we need another way to detect such callgrind files... + pos = s.indexOf("creator:"); + if (pos>0 && buf[pos-1] != '\n') pos = -1; + + return (pos>=0); } int CachegrindLoader::load(TraceData* d, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kcachegrind-16.12.1/qcachegrind/qcgtoplevel.cpp new/kcachegrind-16.12.3/qcachegrind/qcgtoplevel.cpp --- old/kcachegrind-16.12.1/qcachegrind/qcgtoplevel.cpp 2016-11-16 21:59:42.000000000 +0100 +++ new/kcachegrind-16.12.3/qcachegrind/qcgtoplevel.cpp 2017-01-10 22:09:27.000000000 +0100 @@ -378,15 +378,15 @@ _primaryMenuAction = new QAction(tr( "Primary Event Type" ), this ); _primaryMenuAction->setMenu(new QMenu(this)); connect(_primaryMenuAction->menu(), SIGNAL(aboutToShow()), - this, SLOT(QCGTopLevel::primaryAboutToShow()) ); + this, SLOT(primaryAboutToShow()) ); _secondaryMenuAction = new QAction(tr( "Secondary Event Type" ), this ); _secondaryMenuAction->setMenu(new QMenu(this)); connect(_secondaryMenuAction->menu(), SIGNAL(aboutToShow()), - this, SLOT(QCGTopLevel::secondaryAboutToShow()) ); + this, SLOT(secondaryAboutToShow()) ); _groupingMenuAction = new QAction(tr( "Grouping" ), this ); _groupingMenuAction->setMenu(new QMenu(this)); connect(_groupingMenuAction->menu(), SIGNAL(aboutToShow()), - this, SLOT(QCGTopLevel::groupingAboutToShow()) ); + this, SLOT(groupingAboutToShow()) ); icon = QApplication::style()->standardIcon(QStyle::SP_BrowserReload); _cyclesToggleAction = new QAction(icon, tr("Detect Cycles"), this);