[GRASS-dev] Re: r.external

Markus Neteler neteler at osgeo.org
Wed Sep 17 10:21:43 EDT 2008


Hi,

using the DTM map registered with r.external, I get sometimes (not sure on
what it depends), a Segmentation fault:

GRASS 6.4.svn (patUTM32):~ > d.rast pat_dtm5m

 100%
Segmentation fault

GRASS 6.4.svn (patUTM32):~ > gdb d.rast pat_dtm5m
GNU gdb 6.6-3mdv2008.0 (Mandriva Linux release 2008.0)
Copyright (C) 2006 Free Software Foundation, Inc.
...
This GDB was configured as "x86_64-mandriva-linux-gnu"...
Using host libthread_db library "/lib64/libthread_db.so.1".
/home/neteler/pat_dtm5m: No such file or directory.
(gdb) r pat_dtm5m
Starting program:
/home/neteler/grass64/dist.x86_64-unknown-linux-gnu/bin/d.rast
pat_dtm5m
[Thread debugging using libthread_db enabled]
[New Thread 47745198216448 (LWP 24661)]
warning: Lowest section in /usr/lib64/libicudata.so.36 is .gnu.hash at
0000000000000120

b 100%

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 47745198216448 (LWP 24661)]
0x00002b6c8556ebcb in free () from /lib64/libc.so.6
(gdb) bt
#0  0x00002b6c8556ebcb in free () from /lib64/libc.so.6
#1  0x00002b6c83f0c09b in G_free (buf=0x7c7c668c) at alloc.c:130
#2  0x00002b6c83f112e5 in close_old (fd=8) at closecell.c:144
#3  0x00002b6c83f11181 in G_close_cell (fd=8) at closecell.c:86
#4  0x0000000000401dd2 in cell_draw (name=0x608b20 "pat_dtm5m",
mapset=0x608eb0 "PERMANENT", colors=0x7fff26fd57a0, overlay=0,
invert=0, data_type=2)
    at display.c:97
#5  0x0000000000401c30 in display (name=0x608b20 "pat_dtm5m",
mapset=0x608eb0 "PERMANENT", overlay=0, bg=0x0, data_type=2, invert=0,
nocmd=0)
    at display.c:38
#6  0x00000000004021eb in main (argc=2, argv=0x7fff26fd5a18) at main.c:133


(gdb) bt full
#0  0x00002b6c8556ebcb in free () from /lib64/libc.so.6
No symbol table info available.
#1  0x00002b6c83f0c09b in G_free (buf=0x7c7c668c) at alloc.c:130
No locals.
#2  0x00002b6c83f112e5 in close_old (fd=8) at closecell.c:144
        fcb = (struct fileinfo *) 0x6ee5c0
        i = 8
#3  0x00002b6c83f11181 in G_close_cell (fd=8) at closecell.c:86
        fcb = (struct fileinfo *) 0x6ee5c0
#4  0x0000000000401dd2 in cell_draw (name=0x608b20 "pat_dtm5m",
mapset=0x608eb0 "PERMANENT", colors=0x7fff26fd57a0, overlay=0,
invert=0, data_type=2)
    at display.c:97
        cellfile = 8
        xarray = (void *) 0x62b060
        cur_A_row = -1
        t = 0
        b = 1177
        l = 0
        r = 1920
        ncols = 470
        nrows = 390
#5  0x0000000000401c30 in display (name=0x608b20 "pat_dtm5m",
mapset=0x608eb0 "PERMANENT", overlay=0, bg=0x0, data_type=2, invert=0,
nocmd=0)
    at display.c:38
        colors = {version = 0, shift = 0, invert = 0, is_float = 1,
null_set = 1, null_red = 255 '?', null_grn = 255 '?', null_blu = 255
'?',
  undef_set = 0, undef_red = 108 'l', undef_grn = 43 '+', undef_blu =
0 '\0', fixed = {rules = 0x609900, n_rules = 13, lookup = {
      red = 0xffffffff <Address 0xffffffff out of bounds>, grn = 0x0,
blu = 0x6038a0 "???\203l+", set = 0x0, nalloc = 654137872, active =
0},
    fp_lookup = {vals = 0x746240, rules = 0x746320, nalloc = 14,
active = 1}, min = -11000, max = 8850}, modular = {rules = 0x0,
n_rules = 0, lookup = {
      red = 0x606770 "x0", grn = 0x2b6c83efb988 "\024\a", blu =
0x2b6c83ceac00 "", set = 0x7fff26fd5930 "", nalloc = -2085735822,
active = 0},
    fp_lookup = {vals = 0x0, rules = 0x7fff26fd56d8, nalloc = 0,
active = 0}, min = 0, max = -1}, cmin = -11000, cmax = 8850}
        r = 0
        g = 0
        b = 0
#6  0x00000000004021eb in main (argc=2, argv=0x7fff26fd5a18) at main.c:133
        mapset = 0x608eb0 "PERMANENT"
        name = 0x608b20 "pat_dtm5m"
        overlay = 0
        invert = 0
        fp = 1
        module = (struct GModule *) 0x2b6c84160760
        map = (struct Option *) 0x2b6c841606c0
        catlist = (struct Option *) 0x6087f0
        vallist = (struct Option *) 0x608890
        bg = (struct Option *) 0x608950
        flag_o = (struct Flag *) 0x2b6c84160680
        flag_i = (struct Flag *) 0x608a30
        flag_x = (struct Flag *) 0x608a80
(gdb)

It seems to be some G_free() issue (?).
Any ideas?

thanks.
Markus


More information about the grass-dev mailing list