• 
      

    Fix element collection for label-based ClearCase diffs.

    Review Request #15149 — Created July 3, 2026 and submitted

    Information

    RBTools
    master

    Reviewers

    _GetElementsFromLabelThread built its cleartool command with an
    inverted condition: the branch handling a real label was guarded by
    if self.label is None, which never happens, and the branch that always
    ran replaced the command list outright, dropping cleartool find -avobs and
    leaving just ['-exec', ...]. Running that raised an exception in the
    thread, so label comparisons silently saw no elements and treated every
    file as /main/0.

    The special-case branch is now keyed off the "LATEST" pseudo-label
    (which is not a real label type, and compares against the versions
    selected by the view), and both branches append to the base find command
    instead of replacing it.

    This also strips each output line before parsing. The old execute()
    based code split on newlines, but readlines() keeps them, which left a
    trailing newline in every stored version string.

    • Added unit tests for the thread with a label and with LATEST.
    • Ran unit tests.
    Summary ID
    Fix element collection for label-based ClearCase diffs.
    `_GetElementsFromLabelThread` built its cleartool command with an inverted condition: the branch handling a real label was guarded by `if self.label is None`, which never happens, and the branch that always ran replaced the command list outright, dropping `cleartool find -avobs` and leaving just `['-exec', ...]`. Running that raised an exception in the thread, so label comparisons silently saw no elements and treated every file as /main/0. The special-case branch is now keyed off the "LATEST" pseudo-label (which is not a real label type, and compares against the versions selected by the view), and both branches append to the base find command instead of replacing it. This also strips each output line before parsing. The old execute()- based code split on newlines, but readlines() keeps them, which left a trailing newline in every stored version string. Testing Done: - Added unit tests for the thread with a label and with LATEST. - Ran unit tests.
    xturtromowlppzlktplmkpzmwkurkwst
    chipx86
    1. Ship It!
    2. 
        
    david
    Review request changed
    Status:
    Completed