Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-9694

Infinite recursion in GetStreamerInfoList when opening corrupt file.

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Medium
    • Resolution: Fixed
    • Affects Version/s: 6.14/04
    • Fix Version/s: 6.16/00, 6.14/06
    • Component/s: None
    • Labels:
      None
    • Environment:

      lxplus

       

      Description

      hi -

      Trying to open a ROOT file that wan't properly closed with root 6.14.04
      can lead to an infinite recursion in TFile::GetStreamerInfoListImpl.
      (Tested with the LCG_94 version.)

      An example of such a bad file is attached. Trying to open it
      with TFile::Open leads to an infinite recursion between two sites:

      #250 0x00007ffff0457c75 in TFile::GetStreamerInfoList (this=0x32a0800)
       at /mnt/build/jenkins/workspace/lcg_release_tar/BUILDTYPE/Debug/COMPILER/gcc62binutils/LABEL/slc6/build/projects/ROOT-6.14.04/src/ROOT/6.14.04/io/io/src/TFile.cxx:1399
      #251 0x00007ffff0457b4e in TFile::GetStreamerInfoListImpl (this=0x32a0800, 
       lookupSICache=false)
       at /mnt/build/jenkins/workspace/lcg_release_tar/BUILDTYPE/Debug/COMPILER/gcc62binutils/LABEL/slc6/build/projects/ROOT-6.14.04/src/ROOT/6.14.04/io/io/src/TFile.cxx:1366
      #252 0x00007ffff0457c75 in TFile::GetStreamerInfoList (this=0x32a0800)
       at /mnt/build/jenkins/workspace/lcg_release_tar/BUILDTYPE/Debug/COMPILER/gcc62binutils/LABEL/slc6/build/projects/ROOT-6.14.04/src/ROOT/6.14.04/io/io/src/TFile.cxx:1399
      

      While the file is evidently corrupt, ROOT should handle it by giving
      an error rather then going into an infinite loop.

        Attachments

          Activity

            People

            Assignee:
            pcanal Philippe Canal
            Reporter:
            ssnyder Scott Snyder
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Actual Start:
              Actual End: