aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorVladimir Prus <vladimir@codesourcery.com>2009-07-07 08:51:31 +0000
committerVladimir Prus <vladimir@codesourcery.com>2009-07-07 08:51:31 +0000
commit60d329700d212c73c43d1edf0f4b958166e551e5 (patch)
tree537620276df545421f3ba272598e92835d06825a /gdb
parent9a139cba573a3483356f562a725600ab6bc10407 (diff)
downloadgdb-60d329700d212c73c43d1edf0f4b958166e551e5.zip
gdb-60d329700d212c73c43d1edf0f4b958166e551e5.tar.gz
gdb-60d329700d212c73c43d1edf0f4b958166e551e5.tar.bz2
Fix hang in floating varobjs.
* varob.c (varobj_invalidate): Advance to next element when processing floating varobj.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/varobj.c4
2 files changed, 10 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 27f3a2b..d3d25d8 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2009-07-07 Vladimir Prus <vladimir@codesourcery.com>
+ Fix hang in floating varobjs.
+
+ * varob.c (varobj_invalidate): Advance to next
+ element when processing floating varobj.
+
+2009-07-07 Vladimir Prus <vladimir@codesourcery.com>
+
* varobj.c: Remove unnecessary include.
2009-07-07 Tristan Gingold <gingold@adacore.com>
diff --git a/gdb/varobj.c b/gdb/varobj.c
index a025518..e846362 100644
--- a/gdb/varobj.c
+++ b/gdb/varobj.c
@@ -3231,8 +3231,10 @@ varobj_invalidate (void)
/* Floating varobjs are reparsed on each stop, so we don't care if
the presently parsed expression refers to something that's gone.
*/
- if ((*varp)->root->floating)
+ if ((*varp)->root->floating) {
+ varp++;
continue;
+ }
/* global var must be re-evaluated. */
if ((*varp)->root->valid_block == NULL)