Hi Jiri,
Thanks for reporting this problem in teh development version. Now fixed.
Rene Brun
Jiri Masik wrote:
>
> Hello,
>
> I can't read TEventLists written prior to 2.26 with the current
> version of root. Please have a look at the following example
>
> * Version 2.26/00 11 December 2000 *
>
> root [0] TFile f(".list/dat99_data-0-0-0-187pb_2jD.list")
> TKey Reading 122 bytes at address 7131
> root [1] .ls
> TFile** .list/dat99_data-0-0-0-187pb_2jD.list
> TFile* .list/dat99_data-0-0-0-187pb_2jD.list
> KEY: TEventList l2jD;1 l2jD
> root [2] TEventList *l = (TEventList *)gROOT->FindObject("l2jD");
> TKey Reading 6927 bytes at address 204
> Creating StreamerInfo for class: TNamed, version: 1
>
> StreamerInfo for class: TNamed, version=1
> BASE TObject offset= 0 type=66 Basic ROOT object
> TString fName offset= 12 type=65 object identifier
> TString fTitle offset= 20 type=65 object title
> i= 0, TObject type= 66, offset= 0, len=1, method=0
> i= 1, fName type= 65, offset= 12, len=1, method=265386232
> i= 2, fTitle type= 65, offset= 20, len=1, method=265386412
> StreamerInfo, class:TNamed, name=TObject, fType[0]=66, TStreamerBase, bufpos=57
> StreamerInfo, class:TNamed, name=fName, fType[1]=65, TStreamerString, bufpos=67
> StreamerInfo, class:TNamed, name=fTitle, fType[2]=65, TStreamerString, bufpos=118
> ReadBuffer for class: TNamed has read 0 bytes
>
> OBJ: TEventList jDl2jD
> R__v:1
> fN:118947840
> fSize:119078912
> Fatal in <operator new>: storage exhausted
> aborting
>
> and aborting at fList = new Int_t[fSize]; in TEventList::Streamer
>
> //====process old versions before automatic schema evolution
> b.ReadVersion(&R__s, &R__c);
> TNamed::Streamer(b);
> TNamed::Print();
>
> b >> fN;
> b >> fSize;
> b >> fDelta;
> cout << "R__v:" << R__v << endl;
> cout << "fN:" << fN << endl;
> cout << "fSize:" << fSize << endl;
>
> if (fN) {
> fList = new Int_t[fSize];
> b.ReadFastArray(fList,fN);
> }
>
> The data read from the file seem to be misinterpreted before b>> fN;
> already.
>
> I'm running root on Debian/ppc and ia32 with the same result.
> libc6-2.2 and gcc-2.95.2
>
> The file can be found at
> http://darbujan.fzu.cz/~masik/dat99_data-0-0-0-187pb_2jD.list
> and seems to be ok in 2.25-03
>
> Thanks in advance for your help.
>
> Jiri
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:39 MET