[GRASS-dev] [grass-code I][459] Bug in r.le.patch

grass-dev at grass.itc.it grass-dev at grass.itc.it
Mon Aug 13 19:48:25 EDT 2007


code I item #459, was opened at 2007-08-13 18:48
Status: Open
Priority: 3
Submitted By: Pedro Camilo Alcantara C (camiloalcantara)
Assigned to: Nobody (None)
Summary: Bug in r.le.patch 
Issue type: module bug
Issue status: confirmed
GRASS version: 6.2.1
GRASS component: raster
Operating system: Linux
Operating system version: 2.6.22-1-686 (Debian 2.6.22-3)
GRASS CVS checkout date, if applies (YYMMDD): 6.2.2


Initial Comment:
r.le.patch  -c map=forest sam=w att=a1,a2,a3,a4 siz=s1,s2,s7,s8 co1=5 co2=c1,c2,c3,c4 sh1=m1 sh2=h1,h2 per=p1,p2,p3 out=individual
R.LE.PATCH IS WORKING....;

*** glibc detected *** r.le.patch: free(): invalid next size (fast): 0x0c37d598 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6[0xb7d9bcf5]
/lib/i686/cmov/libc.so.6(cfree+0x90)[0xb7d9f790]
/usr/local/grass-6.2.2/lib/libgrass_gis.so(G_free+0x1d)[0xb7ee5cfd]
/usr/local/grass-6.2.2/lib/libgrass_gis.so(G__file_name+0x71)[0xb7ef3331]
/usr/local/grass-6.2.2/lib/libgrass_gis.so(G_raster_map_type+0x5a)[0xb7f0302a]
r.le.patch(cell_clip+0x73)[0x805f223]
r.le.patch(cell_clip_drv+0x15b)[0x805fd3b]
r.le.patch(whole_reg_driver+0x68)[0x804ab38]
r.le.patch(patch_fore+0x96)[0x8054be6]
r.le.patch(main+0x4c3)[0x8056f33]
/lib/i686/cmov/libc.so.6(__libc_start_main+0xe0)[0xb7d48050]
r.le.patch[0x804aa61]
======= Memory map: ========
08048000-08064000 r-xp 00000000 03:01 591040     /usr/local/grass-6.2.2/bin/r.le.patch
08064000-08065000 rw-p 0001c000 03:01 591040     /usr/local/grass-6.2.2/bin/r.le.patch
08065000-0c383000 rw-p 08065000 00:00 0          [heap]
b7c00000-b7c21000 rw-p b7c00000 00:00 0
b7c21000-b7d00000 ---p b7c21000 00:00 0
b7d25000-b7d2f000 r-xp 00000000 03:01 930565     /lib/libgcc_s.so.1
b7d2f000-b7d30000 rw-p 00009000 03:01 930565     /lib/libgcc_s.so.1
b7d30000-b7d32000 rw-p b7d30000 00:00 0
b7d32000-b7e74000 r-xp 00000000 03:01 962961     /lib/i686/cmov/libc-2.6.1.so
b7e74000-b7e75000 r--p 00142000 03:01 962961     /lib/i686/cmov/libc- 2.6.1.so
b7e75000-b7e77000 rw-p 00143000 03:01 962961     /lib/i686/cmov/libc- 2.6.1.so
b7e77000-b7e7a000 rw-p b7e77000 00:00 0
b7e7a000-b7e9d000 r-xp 00000000 03:01 963090     /lib/i686/cmov/libm- 2.6.1.so
b7e9d000-b7e9f000 rw-p 00023000 03:01 963090     /lib/i686/cmov/libm- 2.6.1.so
b7e9f000-b7eb3000 r-xp 00000000 03:01 314656     /usr/lib/libz.so.1.2.3.3
b7eb3000-b7eb4000 rw-p 00013000 03:01 314656     /usr/lib/libz.so.1.2.3.3
b7ed0000-b7ed7000 r-xp 00000000 03:01 690236     /usr/local/grass-6.2.2/lib/libgrass_datetime.6.2.2.so
b7ed7000-b7ed8000 rw-p 00006000 03:01 690236     /usr/local/grass- 6.2.2/lib/libgrass_datetime.6.2.2.so
b7ed8000-b7f20000 r-xp 00000000 03:01 690239     /usr/local/grass-6.2.2/lib/libgrass_gis.6.2.2.so
b7f20000-b7f21000 rw-p 00048000 03:01 690239     /usr/local/grass-6.2.2/lib/libgrass_gis.6.2.2.so
b7f21000-b7f3a000 rw-p b7f21000 00:00 0
b7f3a000-b7f56000 r-xp 00000000 03:01 930319     /lib/ld-2.6.1.so
b7f56000-b7f58000 rw-p 0001b000 03:01 930319     /lib/ld- 2.6.1.so
bfb06000-bfb1b000 rw-p bfb06000 00:00 0          [stack]
ffffe000-fffff000 r-xp 00000000 00:00 0          [vdso]
Aborted

Markus Neteler replication of the bug:

I can replicate this with Spearfish:

GRASS 6.3.cvs (spearfish60):~ > g.copy fields,myfields
GRASS 6.3.cvs (spearfish60):~ > gdb r.le.patch
GNU gdb Red Hat Linux (6.3.0.0-1.143.el4rh)
...
This GDB was configured as "x86_64-redhat-linux-gnu"...Using host
libthread_db library "/lib64/tls/libthread_db.so.1".
(gdb) r -c map=myfields sam=w att=a1,a2,a3,a4 siz=s1,s2,s7,s8 co1=5
co2=c1,c2,c3,c4 sh1=m1 sh2=h1,h2 per=p1,p2,p3 out=individual
*** glibc detected *** free(): invalid next size (fast):
0x000000000064b900 ***

Program received signal SIGABRT, Aborted.
0x00000037ba52e21d in raise () from /lib64/tls/libc.so.6
(gdb) bt
#0  0x00000037ba52e21d in raise () from /lib64/tls/libc.so.6
#1  0x00000037ba52fa1e in abort () from /lib64/tls/libc.so.6
#2  0x00000037ba563451 in __libc_message () from /lib64/tls/libc.so.6
#3  0x00000037ba56906e in _int_free () from /lib64/tls/libc.so.6
#4  0x00000037ba5693b6 in free () from /lib64/tls/libc.so.6
#5  0x0000002a95569e77 in G_free (buf=0x64b900) at alloc.c:126
#6  0x0000002a95581301 in open_null_read (fd=6) at get_row.c:883
#7  0x0000002a95581544 in get_null_value_row_nomask (fd=6,
flags=0x523f20 "h\031sº7", row=0)
   at get_row.c:948
#8  0x0000002a95581945 in get_null_value_row (fd=6, flags=0x523f20
"h\031sº7", row=0, with_mask=1)
   at get_row.c:1041
#9  0x0000002a955819fe in embed_nulls (fd=6, buf=0x64b520, row=0,
map_type=0, null_is_zero=0,
   with_mask=1) at get_row.c:1060
#10 0x0000002a95580e7e in get_map_row_no_reclass (fd=6, rast=0x64b520,
row=0, data_type=0,
   null_is_zero=0, with_mask=1) at get_row.c:594
#11 0x0000002a95580f5d in get_map_row (fd=6, rast=0x64b520, row=0,
data_type=0, null_is_zero=0,
   with_mask=1) at get_row.c:625
#12 0x0000002a95581189 in G_get_raster_row (fd=6, buf=0x64b520, row=0,
data_type=0) at get_row.c:787
#13 0x00000000004177dc in cell_clip (buf=0x529d90, null_buf=0x58a560,
row0=0, col0=0, nrows=197,
   ncols=243, index=0, radius=0, centernull=0x7fbfffed74,
empty=0x7fbfffed70) at trace.c:591
#14 0x00000000004168b4 in cell_clip_drv (col0=0, row0=0, ncols=243,
nrows=197, value=0x0, index=0,
   radius=0) at trace.c:156
#15 0x000000000040cbbd in whole_reg_driver () at driver.c:2737
#16 0x00000000004035ae in patch_fore () at driver.c:111
#17 0x000000000040f756 in main (argc=12, argv=0x7fbfffef68) at main.c:151
(gdb)
#0  0x00000037ba52e21d in raise () from /lib64/tls/libc.so.6
#1  0x00000037ba52fa1e in abort () from /lib64/tls/libc.so.6
#2  0x00000037ba563451 in __libc_message () from /lib64/tls/libc.so.6
#3  0x00000037ba56906e in _int_free () from /lib64/tls/libc.so.6
#4  0x00000037ba5693b6 in free () from /lib64/tls/libc.so.6
#5  0x0000002a95569e77 in G_free (buf=0x64b900) at alloc.c:126
#6  0x0000002a95581301 in open_null_read (fd=6) at get_row.c:883
#7  0x0000002a95581544 in get_null_value_row_nomask (fd=6,
flags=0x523f20 "h\031sº7", row=0)
   at get_row.c:948
#8  0x0000002a95581945 in get_null_value_row (fd=6, flags=0x523f20
"h\031sº7", row=0, with_mask=1)
   at get_row.c:1041
#9  0x0000002a955819fe in embed_nulls (fd=6, buf=0x64b520, row=0,
map_type=0, null_is_zero=0,
   with_mask=1) at get_row.c:1060
#10 0x0000002a95580e7e in get_map_row_no_reclass (fd=6, rast=0x64b520,
row=0, data_type=0,
   null_is_zero=0, with_mask=1) at get_row.c:594
#11 0x0000002a95580f5d in get_map_row (fd=6, rast=0x64b520, row=0,
data_type=0, null_is_zero=0,
   with_mask=1) at get_row.c:625
#12 0x0000002a95581189 in G_get_raster_row (fd=6, buf=0x64b520, row=0,
data_type=0) at get_row.c:787
#13 0x00000000004177dc in cell_clip (buf=0x529d90, null_buf=0x58a560,
row0=0, col0=0, nrows=197,
   ncols=243, index=0, radius=0, centernull=0x7fbfffed74,
empty=0x7fbfffed70) at trace.c:591
#14 0x00000000004168b4 in cell_clip_drv (col0=0, row0=0, ncols=243,
nrows=197, value=0x0, index=0,
   radius=0) at trace.c:156
#15 0x000000000040cbbd in whole_reg_driver () at driver.c:2737
#16 0x00000000004035ae in patch_fore () at driver.c:111
#17 0x000000000040f756 in main (argc=12, argv=0x7fbfffef68) at main.c:151
(gdb)
#0  0x00000037ba52e21d in raise () from /lib64/tls/libc.so.6
#1  0x00000037ba52fa1e in abort () from /lib64/tls/libc.so.6
#2  0x00000037ba563451 in __libc_message () from /lib64/tls/libc.so.6
#3  0x00000037ba56906e in _int_free () from /lib64/tls/libc.so.6
#4  0x00000037ba5693b6 in free () from /lib64/tls/libc.so.6
#5  0x0000002a95569e77 in G_free (buf=0x64b900) at alloc.c:126
#6  0x0000002a95581301 in open_null_read (fd=6) at get_row.c:883
#7  0x0000002a95581544 in get_null_value_row_nomask (fd=6,
flags=0x523f20 "h\031sº7", row=0)
   at get_row.c:948
#8  0x0000002a95581945 in get_null_value_row (fd=6, flags=0x523f20
"h\031sº7", row=0, with_mask=1)
   at get_row.c:1041
#9  0x0000002a955819fe in embed_nulls (fd=6, buf=0x64b520, row=0,
map_type=0, null_is_zero=0,
   with_mask=1) at get_row.c:1060
#10 0x0000002a95580e7e in get_map_row_no_reclass (fd=6, rast=0x64b520,
row=0, data_type=0,
   null_is_zero=0, with_mask=1) at get_row.c:594
#11 0x0000002a95580f5d in get_map_row (fd=6, rast=0x64b520, row=0,
data_type=0, null_is_zero=0,
   with_mask=1) at get_row.c:625
#12 0x0000002a95581189 in G_get_raster_row (fd=6, buf=0x64b520, row=0,
data_type=0) at get_row.c:787
#13 0x00000000004177dc in cell_clip (buf=0x529d90, null_buf=0x58a560,
row0=0, col0=0, nrows=197,
   ncols=243, index=0, radius=0, centernull=0x7fbfffed74,
empty=0x7fbfffed70) at trace.c:591
#14 0x00000000004168b4 in cell_clip_drv (col0=0, row0=0, ncols=243,
nrows=197, value=0x0, index=0,
   radius=0) at trace.c:156
#15 0x000000000040cbbd in whole_reg_driver () at driver.c:2737
#16 0x00000000004035ae in patch_fore () at driver.c:111
#17 0x000000000040f756 in main (argc=12, argv=0x7fbfffef68) at main.c:151
(gdb)

Markus


----------------------------------------------------------------------

You can respond by visiting: 
http://wald.intevation.org/tracker/?func=detail&atid=204&aid=459&group_id=21




More information about the grass-dev mailing list