http://bugs.gentoo.org/210636 http://sourceware.org/ml/gdb-patches/2007-11/msg00136.html 2007-11-07 Vladimir Prus Fix crash when a variable object being deleted has any of its children deleted previously. * varobj.c (delete_variable_1): Don't recurse into deleted children. Index: varobj.c =================================================================== RCS file: /cvs/src/src/gdb/varobj.c,v retrieving revision 1.96 retrieving revision 1.97 diff -u -p -r1.96 -r1.97 --- gdb/varobj.c 27 Sep 2007 18:04:12 -0000 1.96 +++ gdb/varobj.c 7 Nov 2007 20:06:29 -0000 1.97 @@ -1292,6 +1292,8 @@ delete_variable_1 (struct cpstack **resu for (i = 0; i < VEC_length (varobj_p, var->children); ++i) { varobj_p child = VEC_index (varobj_p, var->children, i); + if (!child) + continue; if (!remove_from_parent_p) child->parent = NULL; delete_variable_1 (resultp, delcountp, child, 0, only_children_p);