[GRASS-dev] [GRASS GIS] #1214: r.li.edgedensity: segmentation fault

GRASS GIS trac at osgeo.org
Thu Nov 11 03:21:27 EST 2010


#1214: r.li.edgedensity: segmentation fault
---------------------+------------------------------------------------------
 Reporter:  neteler  |       Owner:  grass-dev@…              
     Type:  defect   |      Status:  new                      
 Priority:  normal   |   Milestone:  6.4.1                    
Component:  Raster   |     Version:  svn-releasebranch64      
 Keywords:           |    Platform:  Linux                    
      Cpu:  x86-64   |  
---------------------+------------------------------------------------------
 Running r.li.edgedensity in 6.4.svn, we obtain a segmentation fault.
 The input map corine_1_2000_nonull contains a ring-like area surrounded by
 -1 cells and -1 in the center (if that matters):

 {{{
 (gdb) r map=corine_1_2000_nonull conf=corine_1_2000
 output=corine_1_2000_edge
 Starting program: /usr/local/grass-6.4.1svn/bin/r.li.edgedensity
 map=corine_1_2000_nonull conf=corine_1_2000 output=corine_1_2000_edge
 Detaching after fork from child process 30690.
 Detaching after fork from child process 30691.
 Detaching after fork from child process 30692.
 Detaching after fork from child process 30693.
 Detaching after fork from child process 30694.
 Detaching after fork from child process 30695.
 Detaching after fork from child process 30696.
 Detaching after fork from child process 30697.
 Detaching after fork from child process 30698.
 Detaching after fork from child process 30699.

 Program received signal SIGSEGV, Segmentation fault.
 0x00002aaaaaf42655 in next_Area (parsed=1, l=0x604690, g=0x6046b0,
 m=0x7fffffffadc0) at daemon.c:651
 651                 memcpy(&tmp, l->head->m, sizeof(msg));

 (gdb) bt full
 #0  0x00002aaaaaf42655 in next_Area (parsed=1, l=0x604690, g=0x6046b0,
 m=0x7fffffffadc0) at daemon.c:651
         tmp = {type = 2, f = {f_a = {aid = 2, x = 0, y = 0, rl = 147, cl =
 295}, f_ma = {aid = 2, x = 0,
               y = 0, rl = 147, cl = 295,
               mask = "corine_1_2000", '\000' <repeats 191 times>"\324,
 .\364\252\252*", '\000' <repeats 14 times>,
 "\001\000\000\000\300\255\377\377\377\177\000\000\000\000\000\000\006",
 '\000' <repeats 14 times>}, f_d = {aid = 2, pid = 0, res =
 3.1193338127189503e-312}, f_e = {aid = 2, pid = 0}, f_t = {pid = 2}}}
 #1  0x00002aaaaaf40845 in calculateIndex (file=0x604250 "corine_1_2000",
 f=0x401238 <edgedensity>,
     parameters=0x0, raster=0x604230 "corine_1_2000_nonull",
 output=0x604270 "corine_1_2000_edge")
     at daemon.c:156
         pathSetup =
 "/home/lucadelu/.r.li/history/corine_1_2000\000\000\000\000\000\000/grassdata/eu_laea/slovenia",
 '\000' <repeats 77 times>, "Xڀh<", '\000' <repeats 11 times>"\250,
 \331\363\252\252*\000\000h8\300i<\000\000\000'|\200h<", '\000' <repeats 67
 times>, "\001", '\000' <repeats 23 times>, "\037a\200h<", '\000' <repeats
 70 times>, "j<\000\000\000\000
 \000j<\000\000\000\224\037\000j<\000\000\000\224\037\000j<", '\000'
 <repeats 11 times>, "Xڀh<\000\000\000\000
 j<\000\000\000\250\331\363\252\252*\000\000\363"...
         out =
 "/home/lucadelu/.r.li/output/corine_1_2000_edge\000\000\033", '\000'
 <repeats 11 times>"\377, \377\377\377\034\036\260\252\252*", '\000'
 <repeats 946 times>"\300,
 \314\377\377\377\177\000\000\266\070\260\252\252*\000\000\266\070\260\252\252*\000\000\a\000\000\000\000\000\000\000?5\204i<\000\000\000\020\000\000\000\060\000\000\000@\311\377\377\377\177\000\000\200\310\377\377\377\177\000\000\266\070\260\252\252*\000\000\a\000\000\000\000\000\000\000?5\204i<\000\000\000\b\000\000\000\000\000\000\000\260\314\377\377\377\177\000\000\020\000\000\000\060\000\000\000\200\311\377\377\377\177\000\000\300\310\377\377\377\177\000\000\035\036\260\252\252*\000\000\b\000\000\000\000\000\000\000?5\204i<\000\000\000\261\070\260\252\252*\000\000'\214\200h<\000\000\000\030\036\260\252\252*\000\000\330v\024\253\252*\000\000\006\000\000\000\000\000\000\000"...
         parsed = 1 '\001'
         reportChannelName = 0x604710
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.0"
         random_access_name = 0x3c68a1bbc0 ""
         history = {mapid = '\000' <repeats 79 times>, title = '\000'
 <repeats 79 times>,
           mapset = '\000' <repeats 79 times>, creator = '\000' <repeats 79
 times>,
           maptype = '\000' <repeats 79 times>, datsrc_1 = '\000' <repeats
 79 times>,
           datsrc_2 = '\000' <repeats 79 times>, keywrd = '\000' <repeats
 79 times>, edlinecnt = 0,
           edhist = {'\000' <repeats 79 times> <repeats 45 times>,
 "\000\000\000\000\060\307\377\377\377\177\000\000\266\070\260\252\252*\000\000\266\070\260\252\252*\000\000\a\000\000\000\000\000\000\000?5\204i<",
 '\000' <repeats 11 times>"\360,
 \306\377\377\377\177\000\000\000\000\000\000\000\000\000\000p\307\377\377\377\177\000\000\035\036\260\252",
 "\252*\000\000\035\036\260\252\252*\000\000\b\000\000\000\000\000\000\000?5\204i<\000\000\000\261\070\260\252\252*\000\000\060\307\377\377\377\177\000\000\000\000\000\000\000\000\000\000P\302\377\377\377\177",
 '\000' <repeats 18 times>"\377, \377\377\377",
 "\377\377\377\377\240\310\377\377\377\177\000\000\030\036\260\252\252*\000\000\200\307\377\377\377\177\000\000\000\000\000\000\001",
 '\000' <repeats 27 times>"\377,
 \377\377\377\377\377\377\377\030\036\260\252\252*\000\000\000\000\000",
             "\000\000\000\000\070\306\377\377\377\177\000\000
 \000\000\000\001", '\000' <repeats 59 times>, " \000\000", '\000' <repeats
 15 times>, "s", '\000' <repeats 60 times>, "\022\000\000"}}
         g = 0x6046b0
         receiveChannel = 15
         res = 16
         child = {{pid = 30690, pipe = 0x604750
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.1",
             channel = 5}, {pid = 30691,
             pipe = 0x604790
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.2", channel = 6}, {
             pid = 30692, pipe = 0x6047d0
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.3",
             channel = 7}, {pid = 30693,
             pipe = 0x604810
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.4", channel = 8}, {
             pid = 30694, pipe = 0x604850
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.5",
             channel = 9}, {pid = 30695,
             pipe = 0x604890
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.6", channel = 10}, {
             pid = 30696, pipe = 0x6048d0
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.7",
             channel = 11}, {pid = 30697,
             pipe = 0x604910
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.8", channel = 12}, {
             pid = 30698, pipe = 0x604950
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.9",
             channel = 13}, {pid = 30699,
             pipe = 0x604990
 "/grassdata/eu_laea/slovenia/.tmp/blade06/30687.10", channel = 14}}
         i = 2
         mypid = 30687
         doneDir = -1
         withoutJob = 32767
         mv_fd = 1753295058
         random_access = 60
         l = 0x604690
         m = {type = 2, f = {f_a = {aid = 2, x = 0, y = 0, rl = 147, cl =
 295}, f_ma = {aid = 2, x = 0,
               y = 0, rl = 147, cl = 295, mask = "corine_1_2000", '\000'
 <repeats 242 times>}, f_d = {
               aid = 2, pid = 0, res = 3.1193338127189503e-312}, f_e = {aid
 = 2, pid = 0}, f_t = {
               pid = 2}}}
         doneJob = {type = 0, f = {f_a = {aid = 0, x = 0, y = 0, rl = 0, cl
 = 0}, f_ma = {aid = 0, x = 0,
               y = 0, rl = 0, cl = 0, mask = '\000' <repeats 255 times>},
 f_d = {aid = 0, pid = 0,
               res = 0}, f_e = {aid = 0, pid = 0}, f_t = {pid = 0}}}
         testpath = "/home/lucadelu/.r.li/history/", '\000' <repeats 4066
 times>
 #2  0x0000000000401236 in main (argc=4, argv=0x7fffffffe3c8) at
 edgedensity.c:72
         raster = 0x2aaaaad14ee0
         conf = 0x604090
         output = 0x604150
         class = 0x604470
         module = 0x2aaaaad14f80
         par = 0x0
 (gdb)
 }}}

 Any ideas what's wrong in raster/r.li/r.li.daemon/daemon.c ?

 Markus

-- 
Ticket URL: <http://trac.osgeo.org/grass/ticket/1214>
GRASS GIS <http://grass.osgeo.org>



More information about the grass-dev mailing list