[GRASS5] [bug #4246] (grass) NVIZ: segfault in kanimation panel

Hamish hamish_nospam at yahoo.com
Tue Apr 11 23:07:21 EDT 2006


> I took a quick look at this and I cannot duplicate the error.

I am using Debian with TclTk 8.4, which is a new thing. See:
  http://article.gmane.org/gmane.comp.gis.grass.devel/11177
  http://grass.itc.it/pipermail/grass-commit/2006-March/021104.html

Maybe a similar issue?

(I haven't recompiled with tcltk 8.3 yet to check if this is the case,
obviously it would be a good idea to do so. It works fine with a CVS
version from February (compiled with tcltk 8.3), so I would guess this 
is a pretty strong lead)


> 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.

If I add "const", the warning goes away for me too. But it still
segfaults on Load anim file.

I also notice these warnings:

<command line>:5:1: warning: "__STDC__" redefined
In file included from anim_support.c:11:
interface.h:363: warning: `struct Map_info' declared inside parameter list
interface.h:363: warning: its scope is only this definition or declaration, which is probably not what you want


and eight "warning: passing arg 1 of `...' as `float' rather than `double' due to prototype"

 
> 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. 

see above links ??



I've made a number of small cleanups to the kanim code in the last week
to make things a little easier on the user (also d.nviz, nviz2.2_script).
Hopefully it will just be smoother and the changes won't be noticed. 
The Keyframe Animator help page is extended including an example and 
should be easier to follow.

Also I added an #ifdef to the MPEG code to make it easy to switch to
using the XVID codec. (compile with gcc -D"USE_XVID") This should really
be an enviro var or GIS var setting, but for now it's a quick proof of 
concept hack.

Result of this is that making movies is somewhat easier now. Great 
synergy with r.in.wms(x2) or r.in.onearth scripts to fetch SRTM and 
LANDSAT. Process LANDSAT image with Markus's i.landsat.rgb & even 
better.


Q: If I make a track with d.nviz the camera looks straight down, not
forwards along the track. Is this normal/expected?



cheers,
Hamish




More information about the grass-dev mailing list