Problem in re-loading macro

ROOT Version: 6.12/06
Platform: linux
Compiler: Not Provided


I have a problem reloading macro after editing it. To simplify the problem, here is a very simple macro:

File: test1.C:

void test1(TH1* h1){

I run root with my file with histograms like this:

root my_file_with_histograms.root

root [1] .L root/test1.C
root [2] test1(my_histogram)   //my_histogram is the existing histogram in my_file_with_histograms.root

Up to now, everything works fine. But if I try now to unload the macro (or upload the new version of it) I get the segmentation violation:

root [3] .U root/test1.C

 *** Break *** segmentation violation

There was a crash.
This is the entire stack trace of all threads:
#0  0x00007f31de2ae89e in waitpid () from /lib64/
#1  0x00007f31de2404e9 in do_system () from /lib64/
#2  0x00007f31df2ea4c8 in TUnixSystem::StackTrace() () from /cvmfs/
#3  0x00007f31df2ec9cc in TUnixSystem::DispatchSignals(ESignals) () from /cvmfs/
#4  <signal handler called>
#5  0x0000000000000000 in ?? ()
#6  0x00007f31da0e6c11 in cling::Transaction::~Transaction() () from /cvmfs/

Please let me know what I need to do to avoid this crash.
Thank you in advance.

Cling does not yet support (properly) unloading (and thus reloading) a macro. Unfortunately, for now, the work-around is to quit the session and restart.


This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.