This bug is reproducible in Ubuntu as well. Running cmdline-utils/odintestsuite manually shows:
$ ./cmdline-utils/odintestsuite
UnitTest |check_all : Testing tjtools ...
UnitTest |check_all : Testing complex ...
UnitTest |check_all : Testing vector ...
UnitTest |check_all : Testing vallist ...
UnitTest |check_all : Testing List ...
UnitTest |check_all : Testing string ...
UnitTest |check_all : Testing numerics ...
UnitTest |check_all : Testing STL ...
UnitTest |check_all : Testing ndim ...
UnitTest |check_all : Testing array ...
UnitTest |check_all : Testing index ...
UnitTest |check_all : Testing process ...
UnitTest |check_all : Testing Thread ...
UnitTest |check_all : Testing LDRserXML ...
UnitTest |check_all : Testing LDRblock(jdx) ...
UnitTest |check_all : Testing LDRblock(xml) ...
UnitTest |check_all : Testing LDRint ...
UnitTest |check_all : Testing LDRstring ...
UnitTest |check_all : Testing LDRcomplex ...
UnitTest |check_all : Testing LDRbool ...
UnitTest |check_all : Testing LDRenum ...
UnitTest |check_all : Testing LDRfileName ...
UnitTest |check_all : Testing LDRstringArr ...
UnitTest |check_all : Testing LDRintArr ...
UnitTest |check_all : Testing LDRcomplexArr ...
UnitTest |check_all : Testing Geometry ...
UnitTest |check_all : Testing CoilSensitivity ...
UnitTest |check_all : Testing Protocol ...
UnitTest |check_all : Testing DataUtils ...
UnitTest |ERROR: DataUtils.check : unwrap_phase(...,0), diff=0.109029
*** Error in `/home/vorlon/odin-2.0.3/cmdline-utils/.libs/lt-odintestsuite':
double free or corruption (!prev): 0xab43c608 ***
Aborted (core dumped)
$
Backtrace under gdb looks something like:
(gdb) bt
#0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47
#1 0xf72ce470 in __libc_signal_restore_set (set=0xfffeeb28)
at ../sysdeps/unix/sysv/linux/nptl-signals.h:79
#2 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#3 0xf72cf15a in __GI_abort () at abort.c:89
#4 0xf72f5eb2 in __libc_message (do_abort=do_abort@entry=2,
fmt=<optimized out>) at ../sysdeps/posix/libc_fatal.c:175
#5 0xf72fa31a in malloc_printerr (action=<optimized out>,
str=0xf7378468 "double free or corruption (!prev)", ptr=<optimized out>,
ar_ptr=<optimized out>) at malloc.c:5046
#6 0xf72faa4a in _int_free (av=0xf73947a4 <main_arena>, p=0xaaae1600,
have_lock=<optimized out>) at malloc.c:3902
#7 0xf76c020a in blitz::MemoryBlock<float>::~MemoryBlock (this=0xaaad34a8,
__in_chrg=<optimized out>) at /usr/include/blitz/memblock.h:121
#8 blitz::MemoryBlock<float>::~MemoryBlock (this=0xaaad34a8,
__in_chrg=<optimized out>) at /usr/include/blitz/memblock.h:125
#9 blitz::MemoryBlockReference<float>::blockRemoveReference (this=0xfffef0b4)
at /usr/include/blitz/memblock.h:502
#10 blitz::MemoryBlockReference<float>::~MemoryBlockReference (
this=0xfffef0b4, __in_chrg=<optimized out>)
at /usr/include/blitz/memblock.h:427
#11 blitz::Array<float, 1>::~Array (this=0xfffef0b4, __in_chrg=<optimized out>)
at /usr/include/blitz/array-impl.h:106
#12 Data<float, 1>::~Data (this=0xfffef0b4, __in_chrg=<optimized out>)
at data.h:492
#13 0xf779ba4c in DataUtilsTest::check (this=<optimized out>) at utils.cpp:109
#14 0xf758d846 in UnitTest::check_all () at tjtest.cpp:31
#15 0xaaaab332 in main (argc=1, argv=0xfffef674) at odintestsuite.cpp:95
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
[email protected] [email protected]
signature.asc
Description: PGP signature

