[GRASS-dev] d.vect kills d.mon

Glynn Clements glynn at gclements.plus.com
Wed May 2 20:22:01 EDT 2007


Markus Neteler wrote:

> mysterious day: I used v.clean on a map to break/snap/rmdupl
> and a topologically correct map is generated. But looking at
> it, d.vect kills x0:

Hamish made some changes to icon plotting in d.vect yesterday, so
those would be the prime suspect:

	RCS file: /grassrepository/grass6/display/d.vect/plot1.c,v
	Working file: plot1.c
	head: 1.32
	branch:
	locks: strict
	access list:
	keyword substitution: kv
	total revisions: 33;	selected revisions: 3
	description:
	----------------------------
	revision 1.32
	date: 2007/05/02 10:42:34;  author: hamish;  state: Exp;  lines: +2 -1
	centroids always use default color to stand out from underlying area
	----------------------------
	revision 1.31
	date: 2007/05/02 10:04:39;  author: hamish;  state: Exp;  lines: +68 -125
	bugfix: wasn't calculating new x,y for icon if colors were off (potentially nasty)
	simplification: use D_symbol() to plot symbols
	speed: only plot symbols which are in the graphics frame (massive speedup for LIDAR)
	readability: change "rgb" variable name and set it using boolean values
	----------------------------
	revision 1.20.4.1
	date: 2007/05/02 10:13:51;  author: hamish;  state: Exp;  lines: +4 -3
	bugfix: wasn't calculating new x,y for icon if colors were offr
	   (potentially nasty, probably never triggered)

> strace d.vect myroads_net col=red
> ...
> _llseek(6, 147456, [147456], SEEK_SET)  = 0
> _llseek(6, 147456, [147456], SEEK_SET)  = 0
> _llseek(6, 147456, [147456], SEEK_SET)  = 0
> _llseek(6, 147456, [147456], SEEK_SET)  = 0
> read(6, "\252\327\353\307\353>\"A\274\222\250\200\301\311RA\v\2"..., 4096) = 139
> _llseek(6, 147595, [147595], SEEK_SET)  = 0
> _llseek(6, 147595, [147595], SEEK_SET)  = 0
> _llseek(6, 147595, [147595], SEEK_SET)  = 0
> rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
> rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0
> write(4, "\0\0\177\6\377\0\0\177\6\377\0\0\177\6\377\0\0\177\6\377"..., 1484) = 1484
> read(5, "", 1)                          = 0
> write(2, "ERROR eof from graphics driver.\n", 32ERROR eof from graphics driver.
> ) = 32
> exit_group(1)                           = ?
> Process 27067 detached
> 
> Not sure where "ERROR eof from graphics driver" originates from, probably
> lib/raster/rem_io.c?

Yes.

Debugging display commands is easier using direct rendering, as the
task isn't split between multiple processes (the client and the
display driver). E.g.:

	$ GRASS_RENDER_IMMEDIATE=TRUE gdb d.vect
	> run myroads_net col=red

-- 
Glynn Clements <glynn at gclements.plus.com>




More information about the grass-dev mailing list