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

TClass::GetCheckSum() must give indication of missing base class

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 6.02/02, 5.34/24
    • Fix Version/s: 6.04.00, 6.02/03
    • Component/s: Core Libraries
    • Labels:
      None
    • Environment:

      gcc4.9.1 SL6

      Description

      In a call of TClass::GetChecksum(). if a base class is unavailable,
      the function returns normally with an incorrect check sum. The only indication of the error is an error message:
      Error("GetCheckSum","Calculating the checksum for (%s) requires the base class (%s) meta information to be available!", GetName(),tbc->GetName());
      Unfortunately, CMS calls TClass::GetChecksum() from a stand alone python script, and there is no obvious way to catch the error. This is a very serious problem, a blocker in fact, for both 5.34 and 6.02.
      We already have checksums populated incorrectly because of this problem.
      Since ROOT will not throw an exception in this case, the least it can do is to return an error return code instead of what it currently does, which is return an incorrect checksum.
      If there is some reason to keep the current behavior, (ugh), perhaps an optional bool argument could be used to force an error return code in this case.

        Attachments

          Activity

            People

            • Assignee:
              pcanal Philippe Canal
              Reporter:
              wmtan William Tanenbaum
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: