[GRASS-dev] [GRASS GIS] #970: r.report seg faults on small page width values

GRASS GIS trac at osgeo.org
Tue Aug 21 06:47:29 PDT 2012


#970: r.report seg faults on small page width values
------------------------------------------------------+---------------------
 Reporter:  epatton                                   |       Owner:  grass-dev@…              
     Type:  defect                                    |      Status:  new                      
 Priority:  minor                                     |   Milestone:  6.4.4                    
Component:  Raster                                    |     Version:  svn-develbranch6         
 Keywords:  r.report, page width, segmentation fault  |    Platform:  Linux                    
      Cpu:  x86-64                                    |  
------------------------------------------------------+---------------------
Changes (by neteler):

  * milestone:  6.4.0 => 6.4.4


Old description:

> r.report seg faults when passed small values of page width values. From
> the NC test dataset, the elevation raster creates the seg fault on 23
> characters, and an infinite loop with 24 characters:
>
> {{{
> r.report -h map=elevation pw=23
>  100%
> +---------------------+
> |Category Information |
> |                    #|description                                  |
> |---------------------|
> |104.966573-105.361675|from  to �
> '@�?@�h0�h��h`�h@�h�����'�Yc4@/�~F�'@4@���V
>       Al
>         A at k#A�K#A�?�����Segmentation fault
> }}}
>
> gdb backtrace:
>
> {{{
> gdb -q r.report
> Reading symbols from /usr/local/grass-6.5.svn/bin/r.report...done.
> (gdb) run map=elevation pw=23
> # lots of binary gibberish printed, then:
> Program received signal SIGSEGV, Segmentation fault.
> print_label (s=0x629000 <Address 0x629000 out of bounds>, len=<value
> optimized out>, pflag=1, spacing=0, dot=<value optimized out>) at
> label.c:46
> 46                  putchar(*s);
> (gdb)
> }}}
>
> ~ Eric.

New description:

 r.report seg faults when passed small values of page width values. From
 the NC test dataset, the elevation raster creates the seg fault on 23
 characters, and an infinite loop with 24 characters:

 {{{
 r.report -h map=elevation pw=23
  100%
 +---------------------+
 |Category Information |
 |                    #|description                                  |
 |---------------------|
 |104.966573-105.361675|from  to �
 '@�?@�h0�h��h`�h@�h�����'�Yc4@/�~F�'@4@���V
       Al
         A at k#A�K#A�?�����Segmentation fault
 }}}

 gdb backtrace:

 {{{
 gdb -q r.report
 Reading symbols from /usr/local/grass-6.5.svn/bin/r.report...done.
 (gdb) run map=elevation pw=23
 # lots of binary gibberish printed, then:
 Program received signal SIGSEGV, Segmentation fault.
 print_label (s=0x629000 <Address 0x629000 out of bounds>, len=<value
 optimized out>, pflag=1, spacing=0, dot=<value optimized out>) at
 label.c:46
 46                  putchar(*s);
 (gdb)
 }}}

 ~ Eric.

--

Comment:

 Still segfaulting:

 {{{
 GRASS 6.4.3svn (nc_spm_08):~ > r.report -h map=elevation pw=23
  100%
 +---------------------+
 |Category Information |
 |                    #|description                                  |
 |---------------------|
 |103.781266-104.176368|from  to ��������c�?�?�?�?�?p�
 A�
 Segmentation fault (core dumped)
 }}}

 also in GRASS 7.svn:
 {{{
 GRASS 7.0.svn (nc_spm_08):~ > r.report -h map=elevation pw=23
  100%
 +---------------------+
 |Category Information |
 |                    #|description                                  |
 |---------------------|
 |103.781266-104.176368|from  to ��������c�?�?�?�?�?p�
 A�
 A0�#A�z#A�?�:�:G�����:n@� �:@�:`�:Segmentation fault (core dumped)
 }}}

-- 
Ticket URL: <http://trac.osgeo.org/grass/ticket/970#comment:3>
GRASS GIS <http://grass.osgeo.org>



More information about the grass-dev mailing list