[GRASS-user] ps.map vpoints eps trouble

Hamish hamish_nospam at yahoo.com
Tue Nov 13 21:08:52 EST 2007


> Frank Broniewski wrote:
> > I have a vector layer with points representing sites. I want to use eps 
> > graphics to represent the sites in ps.map. I define the the points layer in
> 
> > the map description file like below
> > 
> > vpoints sites
..
> >   eps /home/frank/brassard.svg.eps
..
> >   end
> >
> > but when I run 
..
> > ps.map exits with a segmentation fault: Segmentation fault (core dumped)

Hamish:
> It works for me using the GRASS logo EPS file,

It worked for me in Debian as I had compiled with the gcc -g debug flag, which
sets all unint'd memory to null AFAIK.

> Is there any other message with the SegFault? e.g. I am aware that a
> malformed SQL query causes a segfault, but you get a message about that.

I've now fixed that (unrelated) segfault.

> do see see text like this:
>   epstype=1, pre=/usr/local/src/grass/grass63/tools/grasslogo_vector.eps,
> suf=(null)
>   Scale set to 1 : 102867.
>   ...
> ?
..
> I notice in r_vpoints.c that the EPS suffix (vector.layer[vec].epssuf) is
> uninitialized if epstype=1.  ?  (thus above suf=(null))

I believe the above "suf=(null)" was the problem. It was trying to printf() an
uninitialized variable. Fixed in CVS and backported to the 6.2 branch.


The only work around for your current version would to be to put a "$" at the
end of the eps filename in the ps.map instruction file (but not actually on the
eps file itself)
   eps /home/frank/brassard.svg.eps$

and then make a symlink back to the eps file for every category number.
If you put the "$" but don't make the symlinks you'll get a lot of errors
telling you what cat/files it wanted to see. The "$" in the eps instruction
lets you use different .eps files based on cat number, the "$" is replaced by
the cat number for the eps filename. In the above, "suf=" is everything after
the $, which for you didn't exist.


Hamish



      ____________________________________________________________________________________
Be a better sports nut!  Let your teams follow you 
with Yahoo Mobile. Try it now.  http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ




More information about the grass-user mailing list