diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-07-12 20:59:03 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-07-12 20:59:03 +0000 |
commit | d07ed419cf333c92f5b7376c2f97a899b7359161 (patch) | |
tree | 8f1e73c1561f67087c22a421436fef9e9fc306a5 /gdb | |
parent | 10915d9a18d105de7a923061b07a2d932d64ae48 (diff) | |
download | fsf-binutils-gdb-d07ed419cf333c92f5b7376c2f97a899b7359161.zip fsf-binutils-gdb-d07ed419cf333c92f5b7376c2f97a899b7359161.tar.gz fsf-binutils-gdb-d07ed419cf333c92f5b7376c2f97a899b7359161.tar.bz2 |
gdb/
Fix occasional crash of CTRL-C during DWARF read in.
* dwarf2read.c (dwarf2_mark_helper): Return on NULL CU.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/dwarf2read.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index dffd058..60452ba 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2011-07-12 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix occasional crash of CTRL-C during DWARF read in. + * dwarf2read.c (dwarf2_mark_helper): Return on NULL CU. + 2011-07-11 Tom Tromey <tromey@redhat.com> * regcache.c (struct regcache_descr): Fix typo. diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index a5bf1f7..fde5b6a 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -15455,6 +15455,13 @@ dwarf2_mark_helper (void **slot, void *data) struct dwarf2_per_cu_data *per_cu; per_cu = (struct dwarf2_per_cu_data *) *slot; + + /* cu->dependencies references may not yet have been ever read if QUIT aborts + reading of the chain. As such dependencies remain valid it is not much + useful to track and undo them during QUIT cleanups. */ + if (per_cu->cu == NULL) + return 1; + if (per_cu->cu->mark) return 1; per_cu->cu->mark = 1; |