summaryrefslogtreecommitdiff
path: root/gdb/varobj.c
diff options
context:
space:
mode:
authorVladimir Prus <vladimir@codesourcery.com>2008-04-19 16:38:25 +0000
committerVladimir Prus <vladimir@codesourcery.com>2008-04-19 16:38:25 +0000
commit7848123ad7b6fe0cb7d508d686b6462be6b816aa (patch)
tree40799a8ee0057eac045a63dbea5d943e35bd66d8 /gdb/varobj.c
parent70628ac21ed1aeefbf9567c5a04e70efe3e8a6c8 (diff)
downloadgdb-7848123ad7b6fe0cb7d508d686b6462be6b816aa.tar.gz
* varobj.c (varobj_invalidate): Don't touch floating
varobjs.
Diffstat (limited to 'gdb/varobj.c')
-rw-r--r--gdb/varobj.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/varobj.c b/gdb/varobj.c
index b27013c8b66..f3d3b5abef6 100644
--- a/gdb/varobj.c
+++ b/gdb/varobj.c
@@ -2773,6 +2773,11 @@ varobj_invalidate (void)
varp = all_rootvarobj;
while (*varp != NULL)
{
+ /* 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)
+ continue;
+
/* global var must be re-evaluated. */
if ((*varp)->root->valid_block == NULL)
{