[GRASS-dev] Re: [GRASS GIS] #775: r.terraflow: file=/home/mlennert/STREAM/STREAM_tQhXkQ:cannot read!: Bad address

GRASS GIS trac at osgeo.org
Fri Oct 9 04:34:32 EDT 2009

#775: r.terraflow: file=/home/mlennert/STREAM/STREAM_tQhXkQ:cannot read!: Bad
  Reporter:  mlennert  |       Owner:  grass-dev at lists.osgeo.org
      Type:  defect    |      Status:  new                      
  Priority:  normal    |   Milestone:  6.4.0                    
 Component:  Raster    |     Version:  svn-develbranch6         
Resolution:            |    Keywords:  terraflow bad address    
  Platform:  Linux     |         Cpu:  Unspecified              
Comment (by mlennert):

 Replying to [comment:1 glynn]:
 > Replying to [ticket:775 mlennert]:
 > > In all three version (6.4, 6devel and 7), I get the following error
 running r.terraflow in the North Carolina demo data set:
 > > file=/home/mlennert/STREAM/STREAM_lRe0NI:cannot read!: Bad address
 > The error message corresponds to fread() failing with EFAULT (invalid
 buffer pointer) in either AMI_STREAM<T>::read_item() or
 AMI_STREAM<T>::read_array(). I would suspect the latter, as the former
 reads into the read_tmp member of the AMI_STREAM<T> object
 > The assert() failure:
 > >
 > {{{
 > r.terraflow: /home/mlennert/SRC/GRASS/grass6_devel/dist.i486-pc-linux-
 gnu/include/grass/iostream/ami_sort_impl.h:91: size_t
 makeRun_Block(AMI_STREAM<T>*, T*, unsigned int, Compare*) [with T =
 plateauType, Compare = ijCmpPlateauType]: Assertion `err ==
 > }}}
 > also suggests the read_array() method, and indicates that a bogus
 pointer is passed as the "data" parameter to makeRun_Block().
 > Beyond that, I can only suggest running it under gdb and printing a full
 backtrace ("bt full") when it aborts.

 Any ideas based on the backtrace ?


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

More information about the grass-dev mailing list