diff --git a/dwarf-decode-lines.diff b/dwarf-decode-lines.diff new file mode 100644 index 0000000..18b8deb --- /dev/null +++ b/dwarf-decode-lines.diff @@ -0,0 +1,30 @@ +Index: gdb/dwarf2read.c +=================================================================== +RCS file: /cvs/src/src/gdb/dwarf2read.c,v +retrieving revision 1.290 +diff -u -a -p -u -p -a -r1.290 gdb/dwarf2read.c +--- gdb/dwarf2read.c 24 Oct 2008 18:21:00 -0000 1.290 ++++ gdb/dwarf2read.c 27 Oct 2008 14:33:51 -0000 +@@ -7090,6 +7090,13 @@ dwarf_decode_lines (struct line_header * + /* Decode the table. */ + while (!end_sequence) + { ++ if (line_ptr >= line_end) ++ { ++ complaint (&symfile_complaints, ++ _("mangled .debug_line section")); ++ return; ++ } ++ + op_code = read_1_byte (abfd, line_ptr); + line_ptr += 1; + +@@ -7220,7 +7227,7 @@ dwarf_decode_lines (struct line_header * + + file = read_unsigned_leb128 (abfd, line_ptr, &bytes_read); + line_ptr += bytes_read; +- if (lh->num_file_names < file) ++ if (file == 0 || lh->num_file_names < file) + dwarf2_debug_line_missing_file_complaint (); + else + { diff --git a/gdb-6.8.50.20080924-cvs.tar.bz2 b/gdb-6.8.50.20080924-cvs.tar.bz2 deleted file mode 100644 index f352411..0000000 --- a/gdb-6.8.50.20080924-cvs.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cf5383c3218942960d8ee04fe027845a31a568d32c45232bb9717e860dea45af -size 15531415 diff --git a/gdb-6.8.50.20081007-cvs.tar.bz2 b/gdb-6.8.50.20081007-cvs.tar.bz2 new file mode 100644 index 0000000..16f9346 --- /dev/null +++ b/gdb-6.8.50.20081007-cvs.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cb219b70b870aa5ee71cb34268b8776665d30a8f9978403422ea1d927ffba08 +size 15583213 diff --git a/gdb.changes b/gdb.changes index b987a61..52a5128 100644 --- a/gdb.changes +++ b/gdb.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Oct 27 16:05:13 CET 2008 - schwab@suse.de + +- Complain about invalid line number program. + ------------------------------------------------------------------- Tue Oct 7 15:00:24 CEST 2008 - schwab@suse.de diff --git a/gdb.spec b/gdb.spec index 0027d00..6597211 100644 --- a/gdb.spec +++ b/gdb.spec @@ -1,5 +1,5 @@ # -# spec file for package gdb (Version 6.8.50.20080924) +# spec file for package gdb (Version 6.8.50.20081007) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -19,8 +19,8 @@ Name: gdb Summary: The GNU Debugger -Version: 6.8.50.20080924 -Release: 2 +Version: 6.8.50.20081007 +Release: 1 BuildRequires: bison dejagnu flex gcc-c++ gcc-fortran gcc-java gcc-objc python-devel readline-devel zlib-devel %if 0%{?suse_version} > 1020 BuildRequires: libexpat-devel @@ -53,6 +53,7 @@ Patch9: fix-gdb-backtrace.diff Patch10: expand-line-sal-maybe.diff Patch11: power7.diff Patch12: power7-gdbserver.diff +Patch13: dwarf-decode-lines.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -125,6 +126,7 @@ Authors: %patch10 %patch11 -p1 %patch12 -p1 +%patch13 %build %ifarch %ix86 ia64 ppc ppc64 s390 s390x x86_64 @@ -201,6 +203,8 @@ rm -rf $RPM_BUILD_ROOT %endif %changelog +* Mon Oct 27 2008 schwab@suse.de +- Complain about invalid line number program. * Tue Oct 07 2008 schwab@suse.de - Fix crash. * Wed Sep 24 2008 schwab@suse.de @@ -539,7 +543,7 @@ rm -rf $RPM_BUILD_ROOT - Improve last change. * Tue Mar 06 2007 schwab@suse.de - Better handling of ppc64 function descriptor symbols. -* Tue Mar 06 2007 schwab@suse.de +* Mon Mar 05 2007 schwab@suse.de - Remove obsolete patch. - Fix show endian. * Thu Jan 11 2007 schwab@suse.de @@ -747,7 +751,7 @@ rm -rf $RPM_BUILD_ROOT - Fixed support for Fortran arrays (gdb6-fortranarray.diff) * Tue Oct 07 2003 schwab@suse.de - Hack to build on sparc. -* Tue Oct 07 2003 schwab@suse.de +* Mon Oct 06 2003 schwab@suse.de - Update to gdb 6.0. * Fri Oct 03 2003 kukuk@suse.de - Remove unused tetex from neededforbuild @@ -845,7 +849,7 @@ rm -rf $RPM_BUILD_ROOT * Thu Nov 22 2001 schwab@suse.de - Update to gdb 5.1. - Build and install gdbserver on i386 and ia64. -* Sun Aug 19 2001 schwab@suse.de +* Sat Aug 18 2001 schwab@suse.de - Update to gdb snapthot 20010316. * Fri May 18 2001 schwab@suse.de - Include ia64 warning patches (from nadvornik@suse.cz). diff --git a/pie-relocate.diff b/pie-relocate.diff index fcc0cf9..0555ced 100644 --- a/pie-relocate.diff +++ b/pie-relocate.diff @@ -147,7 +147,7 @@ + char buf[8]; + CORE_ADDR pc; + struct obj_section *pc_section; -+ if (target_read_memory (addr, buf, sizeof (buf)) == 0) ++ if (target_read_memory (addr, buf, sizeof (buf)) != 0) + return addr; + pc = extract_unsigned_integer (buf, sizeof (buf)); + pc_section = find_pc_section (pc);