This is the mail archive of the insight@sourceware.org mailing list for the Insight project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Crashes when "balloons" enabled


I never actually deployed the patch you include below because I didn't
hear back from the list telling me it was the right thing to do, and
because I wasn't confident that I understood this code well enough to be
making changes like this.  The problem it was solving didn't occur often
enough to be a serious PITA anyway.  But I did do some testing with it,
and I'm sure I would have noticed if it had made balloons disappear
entirely.  I don't know why it's doing that for you.  In any case,
I doubt that this patch addresses your immediate problem.

I've since moved on to other things and don't use Insight much any more,
so I don't think I can offer any other suggestions.  I've just looked
over all the patches that I applied to 6.5, and the only other one that
looks like it might be important (but unrelated to your crash) is a fix
for a buffer overrun in the C++ demangler:

*** cplus-dem.c	2006/08/17 19:09:27	1.1
--- cplus-dem.c	2006/08/17 19:09:29
***************
*** 3693,3699 ****
--- 3693,3711 ----
  {
    int done = 0;
    int success = 1;
+ #if 0
    char buf[INTBUF_SIZE + 5 /* 'int%u_t' */];
+ #else
+ /*
+  * I think the demangler is totally misbehaving to cause this, but it does
+  * a sprintf (buf, "int%u_t", dec) below, where "dec" apparently contains
+  * junk.  That was overrunning buf, so let's make it a bit bigger.  Need to
+  * revisit this demangling stuff someday, because the demangler is definitely
+  * not doing the right thing (it's interpreting variable names as if they were
+  * special type characters).
+  */
+   char buf[16];
+ #endif
    unsigned int dec = 0;
    type_kind_t tk = tk_integral;
  
***************
*** 3834,3839 ****
--- 3846,3852 ----
  	  buf[2] = '\0';
  	  *mangled += min (strlen (*mangled), 2);
  	}
+       dec = 0; /* In case the sscanf fails */
        sscanf (buf, "%x", &dec);
        sprintf (buf, "int%u_t", dec);
        APPEND_BLANK (result);

--Doug.

-----Original Message-----
To: insight@sources.redhat.com
From: gds <gds@chartertn.net>
Subject:  Re: Crashes when "balloons" enabled
Date:  Wed, 02 Apr 2008 11:51:27 -0400

Doug,
I found this patch from your previous thread "Unwinding TCL Stack" and 
applied it to 6.6.  Unfortunately it seems to just disable the balloon 
effects entirely, for me.
These type of problems might be why Macraigor only supports gdb in 
Eclipse now (just on windows). They told me Insight has problems 
(paraphrasing!) but I didn't believe them since I used it several years 
ago with PPC  with their debugger with absolutely no problems. Not sure 
what version I used (it was under cygwin and probably <6.4. (Could not 
get insight 6.4 to build due to something about makeinfo.)
I will poke around a bit more. Any suggestions or help is appreciated.
-gene

diff -c -r1.1 ./insight-6.5/gdb/gdbtk/generic/gdbtk-varobj.c
*** ./insight-6.5/gdb/gdbtk/generic/gdbtk-varobj.c      2007/07/14 
18:33:59     1.1
--- ./insight-6.5/gdb/gdbtk/generic/gdbtk-varobj.c      2007/07/14 18:34:03
***************
*** 599,606 ****
  static void
  install_variable (Tcl_Interp *interp, char *name)
  {
!   Tcl_CreateObjCommand (interp, name, variable_obj_command,
!                       NULL, NULL);
  }
--- 599,606 ----
  static void
  install_variable (Tcl_Interp *interp, char *name)
  {
!   Tcl_CreateObjCommand (interp, name, gdbtk_call_wrapper,
!                       (ClientData) variable_obj_command, NULL);
  }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]