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);


Reply via email to