Hi David, I have fixed this problem in my development version 2.23/09. Two changes are required: - in TFile::Init remove limitation to 300 chars - in TString::Streamer: implement support for long strings Rene Brun On Thu, 11 Nov 1999, David Kirkby wrote: > Hi - I have found a problem opening root files which were created with > very long path names: > > ******************************************* > * * > * W E L C O M E to R O O T * > * * > * Version 2.23/07 27 October 1999 * > * * > * You are welcome to visit our Web site * > * http://root.cern.ch * > * * > ******************************************* > > FreeType Engine v1.1 used to render TrueType fonts. > > CINT/ROOT C/C++ Interpreter version 5.14.20, Oct 20 1999 > Type ? for help. Commands must be C++ statements. > Enclose multiple statements between { }. > root [0] TFile f(...veryLongPathHere..., "CREATE"); > root [1] f.Close(); > root [2] TFile g(...veryLongPathHere..., "READ"); > Error in <TFile::Init>: Cannot read directory info > > The error is generated when the size of the TNamed base class of the TFile > object exceeds 300 bytes. In my test, I used a path 145 characters long. > Presumably this is intended as a sanity check before reading Mb of 'name' > data, but isn't a 300 byte limit too short, especially since the ctor > doesn't make any check on the length when you create the file. > > Can this 300 byte limit be increased significantly or removed in a future > release, or is there a good reason to keep it? > > David Kirkby > Stanford University > BaBar/SLAC >
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:42 MET