rpms/gdb/F-7 gdb-6.6-upstream.patch,1.5,1.6 gdb.spec,1.231,1.232
Jan Kratochvil (jkratoch)
fedora-extras-commits at redhat.com
Tue Jun 5 17:07:12 UTC 2007
- Previous message (by thread): rpms/telepathy-idle/F-7 telepathy-idle.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message (by thread): rpms/python-sqlobject/FC-6 .cvsignore, 1.3, 1.4 python-sqlobject.spec, 1.7, 1.8 sources, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: jkratoch
Update of /cvs/pkgs/rpms/gdb/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv1540
Modified Files:
gdb-6.6-upstream.patch gdb.spec
Log Message:
* Tue Jun 5 2007 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.6-15
- Fix crash on missing filenames debug info (BZ 242155).
gdb-6.6-upstream.patch:
Index: gdb-6.6-upstream.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/F-7/gdb-6.6-upstream.patch,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- gdb-6.6-upstream.patch 28 Apr 2007 21:50:42 -0000 1.5
+++ gdb-6.6-upstream.patch 5 Jun 2007 17:07:00 -0000 1.6
@@ -738,3 +738,147 @@
--
Alan Modra
IBM OzLabs - Linux Technology Centre
+
+
+
+2007-05-14 Paul Brook <paul at codesourcery.com>
+ Daniel Jacobowitz <dan at codesourcery.com>
+
+ * dwarf2read.c (dwarf2_debug_line_missing_file_complaint): New
+ function.
+ (dwarf_decode_lines): Check for line info without a file.
+
+--- src/gdb/dwarf2read.c 2007/04/18 13:25:04 1.218
++++ src/gdb/dwarf2read.c 2007/05/14 17:15:20 1.219
+@@ -688,6 +688,13 @@
+ }
+
+ static void
++dwarf2_debug_line_missing_file_complaint (void)
++{
++ complaint (&symfile_complaints,
++ _(".debug_line section has line data without a file"));
++}
++
++static void
+ dwarf2_complex_location_expr_complaint (void)
+ {
+ complaint (&symfile_complaints, _("location expression too complex"));
+@@ -6708,19 +6715,24 @@
+ address += (adj_opcode / lh->line_range)
+ * lh->minimum_instruction_length;
+ line += lh->line_base + (adj_opcode % lh->line_range);
+- lh->file_names[file - 1].included_p = 1;
+- if (!decode_for_pst_p)
+- {
+- if (last_subfile != current_subfile)
+- {
+- if (last_subfile)
+- record_line (last_subfile, 0, address);
+- last_subfile = current_subfile;
++ if (lh->num_file_names < file)
++ dwarf2_debug_line_missing_file_complaint ();
++ else
++ {
++ lh->file_names[file - 1].included_p = 1;
++ if (!decode_for_pst_p)
++ {
++ if (last_subfile != current_subfile)
++ {
++ if (last_subfile)
++ record_line (last_subfile, 0, address);
++ last_subfile = current_subfile;
++ }
++ /* Append row to matrix using current values. */
++ record_line (current_subfile, line,
++ check_cu_functions (address, cu));
+ }
+- /* Append row to matrix using current values. */
+- record_line (current_subfile, line,
+- check_cu_functions (address, cu));
+- }
++ }
+ basic_block = 1;
+ }
+ else switch (op_code)
+@@ -6734,9 +6746,15 @@
+ {
+ case DW_LNE_end_sequence:
+ end_sequence = 1;
+- lh->file_names[file - 1].included_p = 1;
+- if (!decode_for_pst_p)
+- record_line (current_subfile, 0, address);
++
++ if (lh->num_file_names < file)
++ dwarf2_debug_line_missing_file_complaint ();
++ else
++ {
++ lh->file_names[file - 1].included_p = 1;
++ if (!decode_for_pst_p)
++ record_line (current_subfile, 0, address);
++ }
+ break;
+ case DW_LNE_set_address:
+ address = read_address (abfd, line_ptr, cu, &bytes_read);
+@@ -6769,17 +6787,22 @@
+ }
+ break;
+ case DW_LNS_copy:
+- lh->file_names[file - 1].included_p = 1;
+- if (!decode_for_pst_p)
++ if (lh->num_file_names < file)
++ dwarf2_debug_line_missing_file_complaint ();
++ else
+ {
+- if (last_subfile != current_subfile)
+- {
+- if (last_subfile)
+- record_line (last_subfile, 0, address);
+- last_subfile = current_subfile;
+- }
+- record_line (current_subfile, line,
+- check_cu_functions (address, cu));
++ lh->file_names[file - 1].included_p = 1;
++ if (!decode_for_pst_p)
++ {
++ if (last_subfile != current_subfile)
++ {
++ if (last_subfile)
++ record_line (last_subfile, 0, address);
++ last_subfile = current_subfile;
++ }
++ record_line (current_subfile, line,
++ check_cu_functions (address, cu));
++ }
+ }
+ basic_block = 0;
+ break;
+@@ -6806,15 +6806,19 @@ dwarf_decode_lines (struct line_header *
+
+ file = read_unsigned_leb128 (abfd, line_ptr, &bytes_read);
+ line_ptr += bytes_read;
+- fe = &lh->file_names[file - 1];
+- if (fe->dir_index)
+- dir = lh->include_dirs[fe->dir_index - 1];
+-
+- if (!decode_for_pst_p)
+- {
+- last_subfile = current_subfile;
+- dwarf2_start_subfile (fe->name, dir, comp_dir, file);
+- }
++ if (lh->num_file_names < file)
++ dwarf2_debug_line_missing_file_complaint ();
++ else
++ {
++ fe = &lh->file_names[file - 1];
++ if (fe->dir_index)
++ dir = lh->include_dirs[fe->dir_index - 1];
++ if (!decode_for_pst_p)
++ {
++ last_subfile = current_subfile;
++ dwarf2_start_subfile (fe->name, dir, comp_dir, file);
++ }
++ }
+ }
+ break;
+ case DW_LNS_set_column:
Index: gdb.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/F-7/gdb.spec,v
retrieving revision 1.231
retrieving revision 1.232
diff -u -r1.231 -r1.232
--- gdb.spec 28 Apr 2007 21:50:42 -0000 1.231
+++ gdb.spec 5 Jun 2007 17:07:00 -0000 1.232
@@ -11,7 +11,7 @@
Version: 6.6
# The release always contains a leading reserved number, start it at 1.
-Release: 14%{?dist}
+Release: 15%{?dist}
License: GPL
Group: Development/Debuggers
@@ -637,6 +637,9 @@
# don't include the files in include, they are part of binutils
%changelog
+* Tue Jun 5 2007 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.6-15
+- Fix crash on missing filenames debug info (BZ 242155).
+
* Sat Apr 28 2007 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.6-14
- Fixup for the PPC Power6/DFP instructions disassembly (BZ 230000).
- New testcase for the GCORE buffer overflow (for BZ 238285, formerly 235753).
- Previous message (by thread): rpms/telepathy-idle/F-7 telepathy-idle.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message (by thread): rpms/python-sqlobject/FC-6 .cvsignore, 1.3, 1.4 python-sqlobject.spec, 1.7, 1.8 sources, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list