Fix element collection for label-based ClearCase diffs.
Review Request #15149 — Created July 3, 2026 and submitted — Latest diff uploaded
_GetElementsFromLabelThreadbuilt 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, droppingcleartool find -avobsand
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.