This package fails the test fortran/layout_test in some circumstances.

As it passes in others, I suspect a bad test, and have enabled the package, disabling the tests
for the meantime.

Details debugged so far:
(1) ./layout_test works for me (TM)
(2) "make check" fails on this test.
(3) setting ulimit -s 8192 make check makes it work, on some platforms.

Running the test under valgrind leads to:

==10896== Process terminating with default action of signal 11 (SIGSEGV)
==10896==  Access not within mapped region at address 0xBD08D00
==10896==    at 0x42162D3: magics::Matrix::operator()(int, int) const (Matrix.h:300)
==10896==    by 0x4219BD1: magics::MatrixHandler<magics::GeoPoint>::operator()(int, int) const (MatrixHandler.h:57)

while Matrix.h has:


297     double operator()(int row, int column) const
298     {
299            // Here for perfrormance we are trusting the user we do not catch exception 
300                                 return (*this)[ row * columns_ + column];
301 
302     }

Core dump:


Core was generated by `./layout_test'.
Program terminated with signal 11, Segmentation fault.
#0  magics::Matrix::operator() (this=0x77eb0b98, row=511, column=85) at ../../src/common/Matrix.h:300
300                                     return (*this)[ row * columns_ + column];
(gdb) 
(gdb) where
#0  magics::Matrix::operator() (this=0x77eb0b98, row=511, column=85) at ../../src/common/Matrix.h:300
#1  0x4020ebd2 in magics::MatrixHandler<magics::GeoPoint>::operator() (this=0x77ee42e0, i=511, j=85) at ../../src/common/MatrixHandler.h:57
#2  0x4020ebd2 in magics::MatrixHandler<magics::GeoPoint>::operator() (this=0xbfe0d384, i=511, j=85) at ../../src/common/MatrixHandler.h:57
#3  0x4024f140 in magics::BoxMatrixHandler<magics::GeoPoint>::operator() (this=0xbfe0d240, row=0, column=0) at ../../src/common/MatrixHandler.h:622
#4  0x4020ebd2 in magics::MatrixHandler<magics::GeoPoint>::operator() (this=0x7864b458, i=0, j=0) at ../../src/common/MatrixHandler.h:57
#5  0x4021140f in MatrixTreshold<magics::GeoPoint>::operator() (this=0xbfe0d340, row=0, column=0) at ../../src/visualisers/Contour.cc:69
#6  0x4021cf88 in setMinMax (this=0xbfe0d340) at ../../src/common/MatrixHandler.h:166
#7  max (this=0xbfe0d340) at ../../src/common/MatrixHandler.h:186
#8  magics::MatrixHandler<magics::GeoPoint>::max (this=0xbfe0d340) at ../../src/common/MatrixHandler.h:182
#9  0x4024e4fb in magics::Contour<magics::GeoPoint>::operator() (this=0x85f4e68, data=..., parent=...) at ../../src/visualisers/Contour.cc:124
#10 0x4022110a in magics::VisualAction<magics::GeoPoint>::visit (this=0x85f3788, drawing=...) at VisualAction.cc:82
#11 0x402f4f37 in magics::DrawingVisitor::visit (this=0x78961678, object=...) at SceneVisitor.h:116
#12 0x4021aa14 in magics::VisualAction<magics::GeoPoint>::visit (this=0x85f3788, layer=..., visitors=...) at VisualAction.cc:268
#13 0x402cd2e5 in magics::ViewNode::visit (this=0x85f3b80, tree=...) at ViewNode.cc:263
#14 0x402c9312 in dispatch<magics::SceneLayer> (visitor=..., this=0x85f37c0) at BasicSceneObject.h:194
#15 magics::FortranSceneNode::visit (this=0x85f37c0, tree=...) at SceneNode.cc:130
#16 0x402c806e in dispatch<magics::Layout> (visitor=..., this=0x85ea528) at BasicSceneObject.h:194
#17 visit (tree=..., this=0x85ea528) at BasicSceneObject.h:256
#18 magics::RootScenePage::visit (this=0x85ea528, tree=...) at RootSceneNode.h:61
#19 0x402c5c36 in dispatch<magics::Layout> (visitor=..., this=0x85eb220) at BasicSceneObject.h:194
#20 magics::RootSceneNode::execute (this=0x85eb220) at RootSceneNode.cc:255
#21 0x402000e9 in magics::FortranMagics::pclose (this=0x85e8728) at FortranMagics.cc:150
#22 0x4035b994 in pclose_ () at MagicsCalls.cc:714
#23 0x080491f7 in layout_test () at layout_test.f:96
#24 main (argc=1, argv=0xbfe0ed4d "./layout_test") at layout_test.f:99
#25 0x40ac6e46 in __libc_start_main (main=0x8048e90 <main>, argc=1, ubp_av=0xbfe0d794, init=0x804aba0 <__libc_csu_init>, fini=0x804ab90 <__libc_csu_fini>, 
    rtld_fini=0x4000e310, stack_end=0xbfe0d78c) at libc-start.c:228
#26 0x08049261 in _start ()
