[Debian-astro-maintainers] Bug#777705: fitscut: FTBFS on mips* and sparc - double free or corruption
James Cowgill
james410 at cowgill.org.uk
Wed Feb 11 17:25:42 UTC 2015
Source: fitscut
Version: 1.4.4-1
Severity: important
Hi,
fitscut FTBFS on mips, mipsel, mips64el and sparc with the error:
> ./fitscut -vv --png --autoscale=98 --all --asinh-scale ./test.fits > _test.png
> Checking input file: ./test.fits
> Examining FITS channel 0...
> Allocating space for 128 x 128 array
> Extracting ./test.fits[1:128,1:128]...
> Scanning file for scaling parameters...
> Scanning channel 0... min: 0.000000 max: 90.509666
> Autoscaling channel 0 by histogram 2.0000% - 98.0000%
> Scaling image (asinh)...
> Autoscaling channel 0 by histogram 2.0000% - 98.0000%
> *** Error in `./fitscut': double free or corruption (out): 0x004d4028 ***
> /bin/bash: line 1: 28874 Aborted ./fitscut -vv --png --autoscale=98 --all --asinh-scale ./test.fits > _test.png
> make[1]: *** [check] Error 134
Running the test program with valgrind on mipsel gives:
> ==3400== Memcheck, a memory error detector
> ==3400== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
> ==3400== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
> ==3400== Command: ./fitscut -vv --png --autoscale=98 --all --asinh-scale ./test.fits
> ==3400==
> Checking input file: ./test.fits
> Examining FITS channel 0...
> Allocating space for 128 x 128 array
> Extracting ./test.fits[1:128,1:128]...
> Scanning file for scaling parameters...
> Scanning channel 0... min: 0.000000 max: 90.509666
> Autoscaling channel 0 by histogram 2.0000% - 98.0000%
> Scaling image (asinh)...
> Autoscaling channel 0 by histogram 2.0000% - 98.0000%
> ==3400== Invalid read of size 4
> ==3400== at 0x409280: compute_histogram (histogram.c:90)
> ==3400== by 0x40995C: autoscale_channel (image_scale.c:79)
> ==3400== by 0x40A044: autoscale_image (image_scale.c:115)
> ==3400== by 0x406784: scale_image (fitscut.c:332)
> ==3400== by 0x406C4C: treat_input (fitscut.c:425)
> ==3400== by 0x408F04: main (fitscut.c:958)
> ==3400== Address 0x4e8570c is 4 bytes before a block of size 40,004 alloc'd
> ==3400== at 0x484B580: malloc (vg_replace_malloc.c:296)
> ==3400== by 0x408F78: compute_histogram (histogram.c:67)
> ==3400== by 0x40995C: autoscale_channel (image_scale.c:79)
> ==3400== by 0x40A044: autoscale_image (image_scale.c:115)
> ==3400== by 0x406784: scale_image (fitscut.c:332)
> ==3400== by 0x406C4C: treat_input (fitscut.c:425)
> ==3400== by 0x408F04: main (fitscut.c:958)
> ==3400==
> ==3400== Invalid write of size 4
> ==3400== at 0x4092A4: compute_histogram (histogram.c:90)
> ==3400== by 0x40995C: autoscale_channel (image_scale.c:79)
> ==3400== by 0x40A044: autoscale_image (image_scale.c:115)
> ==3400== by 0x406784: scale_image (fitscut.c:332)
> ==3400== by 0x406C4C: treat_input (fitscut.c:425)
> ==3400== by 0x408F04: main (fitscut.c:958)
> ==3400== Address 0x4e8570c is 4 bytes before a block of size 40,004 alloc'd
> ==3400== at 0x484B580: malloc (vg_replace_malloc.c:296)
> ==3400== by 0x408F78: compute_histogram (histogram.c:67)
> ==3400== by 0x40995C: autoscale_channel (image_scale.c:79)
> ==3400== by 0x40A044: autoscale_image (image_scale.c:115)
> ==3400== by 0x406784: scale_image (fitscut.c:332)
> ==3400== by 0x406C4C: treat_input (fitscut.c:425)
> ==3400== by 0x408F04: main (fitscut.c:958)
> ==3400==
> Creating PNG file...
> data min: 0.138900 max: 0.648700 clip: 255.000000 scale: 500.196167
> finished writing PNG image
> ==3400==
> ==3400== HEAP SUMMARY:
> ==3400== in use at exit: 60 bytes in 3 blocks
> ==3400== total heap usage: 62 allocs, 59 frees, 562,460 bytes allocated
> ==3400==
> ==3400== LEAK SUMMARY:
> ==3400== definitely lost: 60 bytes in 3 blocks
> ==3400== indirectly lost: 0 bytes in 0 blocks
> ==3400== possibly lost: 0 bytes in 0 blocks
> ==3400== still reachable: 0 bytes in 0 blocks
> ==3400== suppressed: 0 bytes in 0 blocks
> ==3400== Rerun with --leak-check=full to see details of leaked memory
> ==3400==
> ==3400== For counts of detected and suppressed errors, rerun with: -v
> ==3400== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 2 from 2)
The mips64el log for reference (you probably won't need it):
http://mipsdebian.imgtec.com/debian/logs/f/fitscut/fitscut_1.4.4-1_mips64el-20150210-2223.build.gz
Thanks,
James
More information about the Debian-astro-maintainers
mailing list