[GRASSLIST:3582] Re: [GRASS5] NVIZ problem with new Sites on GRASS 5.7

Luigi Pirelli l.pirelli at acsys.it
Thu Jun 3 10:30:22 EDT 2004


Sorry,

wasn't "svg" but gvd_vect function

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1084665696 (LWP 9323)]
0x0095d0bd in gvd_vect (gv=0x89967f8, gs=0x8aab040, do_fast=0) at gvd.c:129

where gln=gln->next points to an uncorrect address
first loop work, and core at the second loop when try to point to gln->next.

Someone had core due to new site (vector) format?

(below some other debug notes)

Thanks Luis
www.riade.net
www.acsys.it


Luigi Pirelli wrote:
> Hi
> 
> I've a problem (core dump) showing sites vector in nviz with GRASS 5.7 
> (cvs version of the 26-05-2004)
> 
> I looked for similar problem on various  MLs, but nothing!
> 
> problem is in a loop showing sites because of "svg" struct is 
> uncorrectly filled in case of degenerated vector (e.g. a site)
> 
> Someone has the same problem or has a patch to solve it?
> 
> Thanks a lot.
> 
> Luigi Pirelli
> www.riade.net
> www.acsys.it
----------------------------

(gdb) p *gv
$3 = {gvect_id = 20656, use_mem = 1, n_lines = 0, drape_surf_id = {110658, 0 
<repeats 11 times>}, flat_val = 0, n_surfs = 1, color = 16777215, width = 2, 
filename = 
"Calich_pozzi_03052004_001 at Sardegna\000\000\230£d\000\230£d\000\000\000\000\000\000\000\000\000\b\001\000\000\a", 
'\0' <repeats 11 times>, "\001\000\000\000\006\000\000\000\000\000\000", x_trans 
= 0, y_trans = 0, z_trans = 0, lines = 0x9856f20, fastlines = 0x0, bgn_read = 0, 
end_read = 0, nxt_line = 0, next = 0x0, clientdata = 0x987e7e8}

(gdb) p *gln
$2 = {type = 158626408, norm = {2.68057822e-33, 1.40129846e-45, 0}, dims = 0, 
npts = 0, p3 = 0x0, p2 = 0x0, next = 0x28}

gln->type (158626408) doesn't match any of OGSF_LINE (could be correct but there 
isn't a correct dimension check) or OGSF_POLYGON.

in ./lib/ogsf/gstypes.h types are

#define OGSF_POINT 1
#define OGSF_LINE  2
#define OGSF_POLYGON 3

So probabilly problem is in loading gv struct that doesn't correctly load data 
in case of vector with 1 dimension.

I hope to be useful :)

See you, Luis

___________________________

.
.
.
.
.
D2/3: Vect_cidx_open(): name = Calich_pozzi_03052004_001 mapset= Sardegna
D2/3: dig_cidx_init()
D3/3: dig_read_cidx()
D2/3: dig_cidx_init()
D3/3: Cidx header: file version 5.0 , supported from GRASS version 5.0
D3/3:   byte order 0
D3/3:   header size 9
D1/3: V1_open_old_nat(): name = Calich_pozzi_03052004_001 mapset = Sardegna
D2/3: Coor header: file version 5.1 , supported from GRASS version 5.1
D2/3:   byte order 0
D2/3:   header size 14
D2/3:   with_z 0
D2/3:   coor size 10628
D1/3: get coor info: 
/home/riade/data/grass/UTM32/Sardegna/vector/Calich_pozzi_03052004_001/coor
D1/3: Info->size = 10628, Info->mtime = 1085414100
D1/3: coor size in head = 10628, real coor file size= 10628
D2/3: dig_file_load ()
D2/3:   requested mode = 2
D2/3:   size = 10628
D2/3:   file was not loaded to the memory
D1/3: Vect_open_old(): vector opened on level 2
D1/3: Vect_read_dblinks(): map = Calich_pozzi_03052004_001, mapset = Sardegna
D1/3: dbln file: 
/home/riade/data/grass/UTM32/Sardegna/vector/Calich_pozzi_03052004_001/dbln
D1/3: dbln: 1 Calich_pozzi_03052004_001 CAT 
/home/riade/data/grass/UTM32/Sardegna/dbf dbf
D3/3: Vect_check_dblink: field 1
D1/3: field = 1 name = (null), table = Calich_pozzi_03052004_001, key = CAT, 
database = /home/riade/data/grass/UTM32/Sardegna/dbf, driver = dbf
D1/3: Dblinks read
D1/3: Vect_Rewind(): name = Calich_pozzi_03052004_001
D3/3: Reading vector areas (nareas = 0)
D3/3: 0 areas loaded
D3/3: Reading vector lines ...
D3/3: Vect_read_next_line()
D3/3: V2_read_next_line_nat()
D3/3: V2_read_line_nat(): line = 1
D3/3: Vect__Read_line_nat: offset = 14
D3/3:     type = 1, do_cats = 1 dead = 0
D3/3:     n_cats = 1
D3/3:     n_points = 1
D3/3:     off = 43
D3/3: line type = 1
D3/3: Vect_read_next_line()
D3/3: V2_read_next_line_nat()
D3/3: V2_read_line_nat(): line = 2
D3/3: Vect__Read_line_nat: offset = 43
D3/3:     type = 1, do_cats = 1 dead = 0
D3/3:     n_cats = 1
D3/3:     n_points = 1
D3/3:     off = 72
D3/3: line type = 1
D3/3: Vect_read_next_line()
D3/3: V2_read_next_line_nat()
D3/3: V2_read_line_nat(): line = 3
D3/3: Vect__Read_line_nat: offset = 72
D3/3:     type = 1, do_cats = 1 dead = 0
D3/3:     n_cats = 1
D3/3:     n_points = 1
.
.
.
.
.
.
D3/3:     type = 1, do_cats = 1 dead = 0
D3/3:     n_cats = 1
D3/3:     n_points = 1
D3/3:     off = 10570
D3/3: line type = 1
D3/3: Vect_read_next_line()
D3/3: V2_read_next_line_nat()
D3/3: V2_read_line_nat(): line = 365
D3/3: Vect__Read_line_nat: offset = 10570
D3/3:     type = 1, do_cats = 1 dead = 0
D3/3:     n_cats = 1
D3/3:     n_points = 1
D3/3:     off = 10599
D3/3: line type = 1
D3/3: Vect_read_next_line()
D3/3: V2_read_next_line_nat()
D3/3: V2_read_line_nat(): line = 366
D3/3: Vect__Read_line_nat: offset = 10599
D3/3:     type = 1, do_cats = 1 dead = 0
D3/3:     n_cats = 1
D3/3:     n_points = 1
D3/3:     off = 10628
D3/3: line type = 1
D3/3: Vect_read_next_line()
D3/3: V2_read_next_line_nat()
D3/3: 0 lines loaded
D1/3: Vect_close(): name = Calich_pozzi_03052004_001, mapset = Sardegna, format 
= 0, level = 2
D1/3: free topology
D2/3: dig_free_plus()
D2/3: dig_free_plus_nodes()
D2/3: dig_free_plus_lines()
D2/3: dig_free_plus_areas()
D2/3: dig_free_plus_isles()
D2/3: dig_cidx_free()
D1/3: free spatial index
D1/3: free category index
D2/3: dig_cidx_free()
D1/3: close history file
D1/3: V1_close_nat(): name = Calich_pozzi_03052004_001 mapset= Sardegna
Vector file Calich_pozzi_03052004_001 at Sardegna loaded.
Total vect memory = 0 Kbytes
D3/3: Draw vector layer.
D3/3: Draw vector layer object type = 158626408 dims = 0
child killed: segmentation violation
     while executing
"exec 
/home/riade/src/grass/grass-5.7_exp_26052004/dist.i686-pc-linux-gnu/etc/nviz2.2/NVWISH2.2 
-f /home/riade/src/grass/grass-5.7_exp_26052004/dist.i6..."
     ("eval" body line 1)
     invoked from within
"eval exec $env(GISBASE)/etc/nviz2.2/NVWISH2.2 -f 
$env(GISBASE)/etc/nviz2.2/scripts/nviz2.2_script $argv -name NVIZ >&@stdout"
     invoked from within
"if {$argv == ""} {
#no arguments
eval exec $env(GISBASE)/etc/nviz2.2/NVWISH2.2 -f 
$env(GISBASE)/etc/nviz2.2/scripts/nviz2.2_script -name NVIZ >&@stdo..."
     (file 
"/home/riade/src/grass/grass-5.7_exp_26052004/dist.i686-pc-linux-gnu/bin/nviz" 
line 16)




More information about the grass-user mailing list