[GRASS5] [bug #4246] (grass) NVIZ: segfault in kanimation panel
Bob Covill
bcovill at tekmap.ns.ca
Tue Apr 11 09:08:25 EDT 2006
Hamish,
I took a quick look at this and I cannot duplicate the error. I do get
the compiler warning for all of the Tcl_SplitList in src. According to
TCL recent documentation arg 4 in Tcl_SplitList should actually be
"const char **". If I change
char **listels;
in anim_support.c (line ~933)
to const char **listels;
I do not get the compiler warning.
Also, according to the Tcl_SplitList documentation, the **listels
argument should be freed. They recommend using
Tcl_Free((char *) argv);
I am not sure why the free call would be creating a problem.
Hope this helps.
--
Bob
On Sat, 2006-04-08 at 13:10 +0200, Harmish Bowman via RT wrote:
> re. segfault in nviz if you use a d.nviz generated script:
>
> G61> nviz script=somefile.nvsrc
>
>
> The segfaults happens when it tries to add a keyframe:
>
> visualization/nviz/src/anim_support.c
> line ~410 in Nadd_key_cmd()
>
> G_free (listels);
>
> if I comment that line out, the script runs, nviz loads, and all is good.
>
> printf(%p) shows listels at 0xbfffee6c
>
> I notice in the compiler warnings:
> anim_support.c:367: warning: passing arg 4 of `Tcl_SplitList' from
> incompatible pointer type
>
> which is this:
> if (Tcl_SplitList(interp, argv[2], &numels, &listels) != TCL_OK)
>
> is that call promoting listels to something else?
>
>
> Is there a better way of debugging nviz than just peppering puts and printf's?
> gdb is useless for it.
>
>
> thanks,
> Hamish
>
>
> -------------------------------------------- Managed by Request Tracker
>
> _______________________________________________
> grass5 mailing list
> grass5 at grass.itc.it
> http://grass.itc.it/mailman/listinfo/grass5
>
More information about the grass-dev
mailing list