aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog3
-rw-r--r--gdb/dbxread.c14
2 files changed, 13 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 8c6751b..84cc94d 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,8 @@
2007-08-21 Michael Snyder <msnyder@access-company.com>
+ * dbxread.c (read_dbx_symtab): Guard null deref.
+ Break up long line.
+
* valops.c (find_overload_match): Guard against NULL.
2007-08-21 Daniel Jacobowitz <dan@codesourcery.com>
diff --git a/gdb/dbxread.c b/gdb/dbxread.c
index bba9995..f66c22f 100644
--- a/gdb/dbxread.c
+++ b/gdb/dbxread.c
@@ -1828,7 +1828,8 @@ read_dbx_symtab (struct objfile *objfile)
function_outside_compilation_unit_complaint (name);
xfree (name);
}
- nlist.n_value += ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
+ nlist.n_value += ANOFFSET (objfile->section_offsets,
+ SECT_OFF_TEXT (objfile));
/* Kludges for ELF/STABS with Sun ACC */
last_function_name = namestring;
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
@@ -1838,7 +1839,9 @@ read_dbx_symtab (struct objfile *objfile)
SECT_OFF_TEXT (objfile)))
{
CORE_ADDR minsym_valu =
- find_stab_function_addr (namestring, pst->filename, objfile);
+ find_stab_function_addr (namestring,
+ pst ? pst->filename : NULL,
+ objfile);
/* find_stab_function_addr will return 0 if the minimal
symbol wasn't found. (Unfortunately, this might also
be a valid address.) Anyway, if it *does* return 0,
@@ -1893,7 +1896,8 @@ read_dbx_symtab (struct objfile *objfile)
function_outside_compilation_unit_complaint (name);
xfree (name);
}
- nlist.n_value += ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
+ nlist.n_value += ANOFFSET (objfile->section_offsets,
+ SECT_OFF_TEXT (objfile));
/* Kludges for ELF/STABS with Sun ACC */
last_function_name = namestring;
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
@@ -1903,7 +1907,9 @@ read_dbx_symtab (struct objfile *objfile)
SECT_OFF_TEXT (objfile)))
{
CORE_ADDR minsym_valu =
- find_stab_function_addr (namestring, pst->filename, objfile);
+ find_stab_function_addr (namestring,
+ pst ? pst->filename : NULL,
+ objfile);
/* find_stab_function_addr will return 0 if the minimal
symbol wasn't found. (Unfortunately, this might also
be a valid address.) Anyway, if it *does* return 0,