Hi Victor, My guess is that you have a scoping problem. Are you creating objects on the stack (not via new). These objects are automatically deleted when you leave the function. May I suggest the following: Instead of void AMUAnalysis(int triggerType) { have only { (unnamed script) In this case, the objects craeted on the stack will not be removed at the end of execution. If you run on a Unix system, could you run Root under gdb and let me know the traceback. Do: gdb root.exe gdb > r ... ... at the crash, do: gdb > info stack And send me the output of the info stack command. Rene Brun On Thu, 7 Sep 2000, Victor Ikonnikov wrote: > Hi, all! > > I've got a problem running macro with parameters. > If i call ".x AMUAnalysis.C(0)" from ROOT prompt > and have "void AMUAnalysis(int triggerType) {" > inside the macro, it does everything it should, > but at the very end of execution i have > "That's all, folks! > > *** Break *** segmentation violation > Root > Function AMUAnalysis() busy flag cleared" > message. The macro ends with the following lines: > " cout<< "That's all, folks!"<<endl; > > }" > So i have no idea where and why it crashes. > If i declare parameter(s) inside the macro,i.e. > run just ".x AMUAnalysis.C" everything' fine. > And this doesn't depend on the number of type of parameters. > Does anybody knows what could it be? > > Sincerely yours, > Victor > >
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:32 MET