Hello community,

here is the log from the commit of package kdbg for openSUSE:Factory checked in 
at 2013-11-12 15:08:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdbg (Old)
 and      /work/SRC/openSUSE:Factory/.kdbg.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kdbg"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kdbg/kdbg.changes        2013-04-18 
10:19:03.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kdbg.new/kdbg.changes   2013-11-12 
15:08:33.000000000 +0100
@@ -1,0 +2,13 @@
+Mon Nov 11 13:38:05 UTC 2013 - [email protected]
+
+- Update to 2.5.4:
+  * Source file names with international characters are handled better.
+  * When an executable is loaded, GDBs of different vintage print different
+    text, some of which were treated as error text incorrectly, leading to
+    failed debugging sessions. More of these texts are now ignored.
+  * Variables pointing to some global variable lacked the ability to be
+    expanded with recent GDBs.
+  * Parsing of string values residing in global variables was fixed.
+- Removed opensuse-gdb.diff, it's included upstream now
+
+-------------------------------------------------------------------

Old:
----
  kdbg-2.5.3.tar.gz
  opensuse-gdb.diff

New:
----
  kdbg-2.5.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kdbg.spec ++++++
--- /var/tmp/diff_new_pack.90Ou4B/_old  2013-11-12 15:08:34.000000000 +0100
+++ /var/tmp/diff_new_pack.90Ou4B/_new  2013-11-12 15:08:34.000000000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           kdbg
-Version:        2.5.3
+Version:        2.5.4
 Release:        0
 Summary:        Graphical User Interface for GDB
 License:        GPL-2.0+
@@ -25,7 +25,6 @@
 Url:            http://www.kdbg.org/
 Source0:        %{name}-%{version}.tar.gz
 Patch1:         susepatches.diff
-Patch2:         opensuse-gdb.diff
 BuildRequires:  fdupes
 BuildRequires:  libkde4-devel
 Requires:       gdb
@@ -51,7 +50,6 @@
 %prep
 %setup -q
 %patch1 -p1
-%patch2 -p1
 
 %build
   %cmake_kde4 -d build

++++++ kdbg-2.5.3.tar.gz -> kdbg-2.5.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/CMakeLists.txt 
new/kdbg-2.5.4/CMakeLists.txt
--- old/kdbg-2.5.3/CMakeLists.txt       2013-04-01 16:59:28.000000000 +0200
+++ new/kdbg-2.5.4/CMakeLists.txt       2013-11-09 20:32:33.000000000 +0100
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 2.6)
 
-set(KDBG_VERSION 2.5.3)
+set(KDBG_VERSION 2.5.4)
 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/kdbg/version.h.cmake 
${CMAKE_CURRENT_BINARY_DIR}/kdbg/version.h)
 
 find_package(KDE4 REQUIRED)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/ReleaseNotes-2.5.4 
new/kdbg-2.5.4/ReleaseNotes-2.5.4
--- old/kdbg-2.5.3/ReleaseNotes-2.5.4   1970-01-01 01:00:00.000000000 +0100
+++ new/kdbg-2.5.4/ReleaseNotes-2.5.4   2013-11-09 20:32:33.000000000 +0100
@@ -0,0 +1,18 @@
+KDbg Release Notes for version 2.5.4
+====================================
+
+Changes since 2.5.3
+-------------------
+
+Bug fixes
+
+- Source file names with international characters are handled better.
+
+- When an executable is loaded, GDBs of different vintage print different
+  text, some of which were treated as error text incorrectly, leading to
+  failed debugging sessions. More of these texts are now ignored.
+
+- Variables pointing to some global variable lacked the ability to be
+  expanded with recent GDBs.
+
+- Parsing of string values residing in global variables was fixed.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/kdbg/dbgdriver.cpp 
new/kdbg-2.5.4/kdbg/dbgdriver.cpp
--- old/kdbg-2.5.3/kdbg/dbgdriver.cpp   2013-04-01 16:59:28.000000000 +0200
+++ new/kdbg-2.5.4/kdbg/dbgdriver.cpp   2013-11-09 20:32:33.000000000 +0100
@@ -202,7 +202,7 @@
 
     // write also to log file
     if (m_logFile.isOpen()) {
-       m_logFile.write(str, cmd->m_cmdString.length());
+       m_logFile.write(str);
        m_logFile.flush();
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/kdbg/gdbdriver.cpp 
new/kdbg-2.5.4/kdbg/gdbdriver.cpp
--- old/kdbg-2.5.3/kdbg/gdbdriver.cpp   2013-04-01 16:59:28.000000000 +0200
+++ new/kdbg-2.5.4/kdbg/gdbdriver.cpp   2013-11-09 20:32:33.000000000 +0100
@@ -434,7 +434,7 @@
     }
 
     QString cmdString;
-    cmdString.sprintf(cmds[cmd].fmt, strArg.toLatin1().constData());
+    cmdString.sprintf(cmds[cmd].fmt, strArg.toUtf8().constData());
     return cmdString;
 }
 
@@ -540,11 +540,11 @@
            // must split off file name part
            strArg = QFileInfo(strArg).fileName();
        }
-       cmdString.sprintf(cmds[cmd].fmt, strArg.toLatin1().constData(), intArg);
+       cmdString.sprintf(cmds[cmd].fmt, strArg.toUtf8().constData(), intArg);
     }
     else
     {
-       cmdString.sprintf(cmds[cmd].fmt, intArg, strArg.toLatin1().constData());
+       cmdString.sprintf(cmds[cmd].fmt, intArg, strArg.toUtf8().constData());
     }
     return cmdString;
 }
@@ -559,8 +559,8 @@
 
     QString cmdString;
     cmdString.sprintf(cmds[cmd].fmt,
-                     strArg1.toLatin1().constData(),
-                     strArg2.toLatin1().constData());
+                     strArg1.toUtf8().constData(),
+                     strArg2.toUtf8().constData());
     return cmdString;
 }
 
@@ -1266,6 +1266,7 @@
        //  10 '\n'
        //  <optimized out>
        //  0x823abc <Array<int> virtual table>
+       //  0x40240f <globarstr> "test"
        //  (void (*)()) 0x8048480 <f(E *, char)>
        //  (E *) 0xbffff450
        //  red
@@ -1406,30 +1407,34 @@
        // string values never contain a literal line break
        variable->m_value.replace('\n', ' ');
 
-       if (checkMultiPart) {
+       while (checkMultiPart) {
            // white space
            while (isspace(*p))
                p++;
            // may be followed by a string or <...>
+           // if this was a pointer with a string,
+           // reset that pointer flag since we have now a value
            start = p;
-           
+           checkMultiPart = false;
+
            if (*p == '"' || *p == '\'') {
                skipString(p);
+               variable->m_varKind = VarTree::VKsimple;
            } else if (*p == 'L' && (p[1] == '"' || p[1] == '\'')) {
                skipString(p);  // wchar_t string
+               variable->m_varKind = VarTree::VKsimple;
            } else if (*p == '<') {
                // if this value is part of an array, it might be followed
                // by <repeats 15 times>, which we don't skip here
-               if (strncmp(p, "<repeats ", 9) != 0)
+               if (strncmp(p, "<repeats ", 9) != 0) {
                    skipNestedAngles(p);
+                   checkMultiPart = true;
+               }
            }
            if (p != start) {
                // there is always a blank before the string,
                // which we will include in the final string value
                variable->m_value += QString::fromLatin1(start-1, (p - 
start)+1);
-               // if this was a pointer, reset that flag since we 
-               // now got the value
-               variable->m_varKind = VarTree::VKsimple;
            }
        }
 
@@ -2236,6 +2241,9 @@
      *     Reading symbols from
      */
     while (strncmp(output, "Reading symbols from", 20) == 0 ||
+          strncmp(output, "done.", 5) == 0 ||
+          strncmp(output, "Missing separate debuginfo", 26) == 0 ||
+          strncmp(output, "Try: ", 5) == 0 ||
           strncmp(output, "Using host libthread_db", 23) == 0 ||
           strncmp(output, "(no debugging symbols found)", 28) == 0)
     {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/kdbg/regwnd.cpp 
new/kdbg-2.5.4/kdbg/regwnd.cpp
--- old/kdbg-2.5.3/kdbg/regwnd.cpp      2013-04-01 16:59:28.000000000 +0200
+++ new/kdbg-2.5.4/kdbg/regwnd.cpp      2013-11-09 20:32:33.000000000 +0100
@@ -320,11 +320,13 @@
 
 static QString toFloat(const QString& hex, char p)
 {
-    uint bits;
     int prec=6;
-    if (hex.length()<=10) { bits=32; prec=6; }
-    else if (hex.length()<=18) { bits=64; prec=17; }
-    else { bits=80; prec=20; }
+    if (hex.length() <= 10)
+       prec = 6;
+    else if (hex.length() <= 18)
+       prec = 17;
+    else
+       prec = 20;
 
     char fmt[8] = "%.*Lf";
     fmt[4] = p;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/kdbg/sourcewnd.cpp 
new/kdbg-2.5.4/kdbg/sourcewnd.cpp
--- old/kdbg-2.5.3/kdbg/sourcewnd.cpp   2013-04-01 16:59:28.000000000 +0200
+++ new/kdbg-2.5.4/kdbg/sourcewnd.cpp   2013-11-09 20:32:33.000000000 +0100
@@ -172,7 +172,6 @@
        int row = block.blockNumber();
        uchar item = m_lineItems[row];
 
-       QPoint pt = r.topLeft();
        int h = r.height();
        p->save();
        p->translate(0, r.top());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/kdbg/testprogs/testfile.cpp 
new/kdbg-2.5.4/kdbg/testprogs/testfile.cpp
--- old/kdbg-2.5.3/kdbg/testprogs/testfile.cpp  2013-04-01 16:59:28.000000000 
+0200
+++ new/kdbg-2.5.4/kdbg/testprogs/testfile.cpp  2013-11-09 20:32:33.000000000 
+0100
@@ -17,7 +17,8 @@
 struct emptyVDerived : S { virtual ~emptyVDerived(){} };
 struct emptyVNested : emptyVBase { };
 
-int globalvar = 1234;
+S globalvar = { 1234, -18, &globalvar };
+static const char globarstr[] = "test";
 
 class Cl
 {
@@ -39,6 +40,7 @@
        int operator()(const QString& x, int& y) const;
        operator const char*() { return 0; }
        operator PtrFunc*();
+       void takeACStr(const char* cstr);
 };
 
 namespace A {
@@ -183,6 +185,7 @@
        int n = 83;
        d1(strref, n);
        PtrFunc* ppf = d1;
+       d1.takeACStr(globarstr);
 }
 
 Cl::Cl(int r) :
@@ -223,3 +226,8 @@
 {
     return 0;
 }
+
+void Dl::takeACStr(const char* cstr)
+{
+       const char filespec[20] = "more test";
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kdbg-2.5.3/kdbg/xsldbgdriver.cpp 
new/kdbg-2.5.4/kdbg/xsldbgdriver.cpp
--- old/kdbg-2.5.3/kdbg/xsldbgdriver.cpp        2013-04-01 16:59:28.000000000 
+0200
+++ new/kdbg-2.5.4/kdbg/xsldbgdriver.cpp        2013-11-09 20:32:33.000000000 
+0100
@@ -366,7 +366,7 @@
     }
 
     QString cmdString;
-    cmdString.sprintf(cmds[cmd].fmt, strArg.toLatin1().constData());
+    cmdString.sprintf(cmds[cmd].fmt, strArg.toUtf8().constData());
     return cmdString;
 }
 
@@ -470,9 +470,9 @@
             // must split off file name part
             strArg = QFileInfo(strArg).fileName();
         }
-        cmdString.sprintf(cmds[cmd].fmt, strArg.toLatin1().constData(), 
intArg);
+        cmdString.sprintf(cmds[cmd].fmt, strArg.toUtf8().constData(), intArg);
     } else {
-        cmdString.sprintf(cmds[cmd].fmt, intArg, 
strArg.toLatin1().constData());
+        cmdString.sprintf(cmds[cmd].fmt, intArg, strArg.toUtf8().constData());
     }
     return cmdString;
 }
@@ -489,8 +489,8 @@
 
     QString cmdString;
     cmdString.sprintf(cmds[cmd].fmt,
-                     strArg1.toLatin1().constData(),
-                     strArg2.toLatin1().constData());
+                     strArg1.toUtf8().constData(),
+                     strArg2.toUtf8().constData());
     return cmdString;
 }
 
@@ -698,7 +698,6 @@
 parseVar(const char *&s)
 {
     const char *p = s;
-    bool foundLocalVar = false;
     ExprValue *variable = 0L;
     QString name;
 
@@ -713,7 +712,6 @@
     }
 
     if (strncmp(p, " Local", 6) == 0) {
-        foundLocalVar = true;
         /* skip " Local" */
         p = p + 6;
         TRACE("Found local variable");

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to