Re: Segfault in GDML parsing

From: Rene Brun <Rene.Brun_at_cern.ch>
Date: Wed, 14 Nov 2007 05:45:21 +0100


I have forwarded your mail to the GDML experts.

Rene Brun

Mark Messier wrote:
> Hello,
>
> In recent root versions (5.17.04) I am getting seg faults when I load
> a GDML file. The same file works if I roll the root version back to
> 5.15 so I'm fairly certain this is due to changes in the GDML parsing
> inside root.
>
> I think the problem is related to long lines. For example, if I
> replace these lines:
>
> <physvol>
> <volumeref ref="vRockSouth"/>
> <position name="pRockSouth" unit="cm"
> x="0"
>
> y="-(3.0*(1559.6))/2+(((1187.+2./12)*(30.48))-((((1187.+2./12)*(30.48))+
> (1559.6)/2)-(3.0*(1559.6))/2)-(2.0*(30.48)))+((((1258.+2./12)*(30.48))-35*(30.48
>
> ))-((((1187.+2./12)*(30.48))+(1559.6)/2)-(3.0*(1559.6))/2)-(((1187.+2./12)*(30.4
>
> 8))-((((1187.+2./12)*(30.48))+(1559.6)/2)-(3.0*(1559.6))/2)-(2.0*(30.48))))/2"
>
>
> z="-(10.0*(295.0*(30.48)))/2+((10.0*(295.0*(30.48)))-((10.0*(295.0*(30.4
> 8)))/2-((383.+4./12.)*(30.48))+(10.5*(30.48)+(36.0*(2.54))))-((383.+4./12.)*(30.
>
> 48)))/2"
> />
> </physvol>
>
> with
>
> <physvol>
> <volumeref ref="vRockSouth"/>
> <position name="pRockSouth" unit="cm"
> x="0"
> y="-261.64"
>
> z="-(10.0*(295.0*(30.48)))/2+((10.0*(295.0*(30.48)))-((10.0*(295.0*(30.4
> 8)))/2-((383.+4./12.)*(30.48))+(10.5*(30.48)+(36.0*(2.54))))-((383.+4./12.)*(30.
>
> 48)))/2"
> />
> </physvol>
>
> [notice I replaced the long expression for y with a short one] the
> file is parsed correctly. Is there some recently introduced upper
> limit on the size of the fields? If it helps locate the problem, I can
> report that the expression above is correctly evaluated by TF1. I can
> provide the complete .gdml file and a root macro that loads it if it
> would help test.
>
> Cheers,
> Mark
> ========================================================================
> Mark Messier messier_at_indiana.edu
> Department of Physics http://www.physics.indiana.edu/~messier
> Indiana University Phone: (812) 855-0236
> Bloomington, IN 47405 Fax: (812) 855-0440
>
>
>
Received on Wed Nov 14 2007 - 05:45:44 CET

This archive was generated by hypermail 2.2.0 : Tue Nov 20 2007 - 17:50:02 CET