Dear ROOTers,
using TTree::Draw to make a matrix which is then projected, the second
time the matrix is produced (with different dimensions), there is a
segfault when projecting again:
root [] T->Draw("nbf : bf.q >> nqbf(100,0,10000,20,0,20)","","colz")
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
(Long64_t)16318
root [] nqbf->ProjectionX()->Draw()
root [] T->Draw("nbf : bf.q >> nqbf(100,0,10000,22,0,22)","","colz")
(Long64_t)16318
root [] nqbf->ProjectionX()->Draw()
- Break *** segmentation violation
Generating stack trace...
0x002ef7bc in TCint_FindSpecialObject + 0x24 from /opt/root/lib/libCore.so
0x00a632f6 in G__APIGetSpecialObject_layer1 + 0x4e from
/opt/root/lib/libCint.so
0x00b5ab8c in G__getvariable + 0x5bbe from /opt/root/lib/libCint.so
0x00b5b4f4 in G__getstructmem + 0x200 from /opt/root/lib/libCint.so
0x00b555b1 in G__getvariable + 0x5e3 from /opt/root/lib/libCint.so
0x00ad02cd in G__getitem + 0x587 from /opt/root/lib/libCint.so
0x00ad053c in G__getitem + 0x7f6 from /opt/root/lib/libCint.so
0x00acef02 in G__getexpr + 0x884c from /opt/root/lib/libCint.so
0x00b12e7a in G__exec_function + 0x1d8 from /opt/root/lib/libCint.so
0x00b19f02 in G__exec_statement + 0x254a from /opt/root/lib/libCint.so
0x00ab633e in G__exec_tempfile_core + 0x2ee from /opt/root/lib/libCint.so
0x00ab6530 in G__exec_tempfile_fp + 0x22 from /opt/root/lib/libCint.so
0x00b224b5 in G__process_cmd + 0x4767 from /opt/root/lib/libCint.so
0x002f02f4 in TCint::ProcessLine(char const*,
TInterpreter::EErrorCode*) + 0x138 from /opt/root/lib/libCore.so
0x00235122 in TApplication::ProcessLine(char const*, bool, int*) +
0x61e from /opt/root/lib/libCore.so
0x04ed6c13 in TRint::HandleTermInput() + 0x1dd from
/opt/root/lib/libRint.so
0x04ed5902 in TTermInputHandler::Notify() + 0x24 from
/opt/root/lib/libRint.so
0x04ed74c8 in TTermInputHandler::ReadNotify() + 0x12 from
/opt/root/lib/libRint.
so
0x00374736 in TUnixSystem::CheckDescriptors() + 0x144 from
/opt/root/lib/libCore
.so
How can the segfault be avoided?
The ROOT version I have is CVS (from a few days ago) compiled on
Scientific Linux (g++ 3.2.3).
Best wishes,
Alexander
Received on Thu Feb 09 2006 - 12:27:51 MET