[Mon] Fix service collisions on ecal_mon_gui (5.13) #1550
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Very simple fix. Adds the service name to the
ServiceTreeItem
identifier so that different services running on the same host/process with the same methods don't get accidentally de-duped inecal_mon_gui
.Description
This PR fixes the following bug:
Working example to demonstrate issue
This Python program creates two different eCAL services with the same PID, host, and method name.
Expected behavior
ecal_mon_gui
should show both services on the service widget.Actual behavior
ecal_mon_gui
only shows one service (the most recent one):The fix
This issue occurs because each of these service listings is a
ServiceTreeItem
, and the Service widget tracks and prunesServiceTreeItems
based on their generated identifier. The identifier currently only includes the PID, host, and method name. This fix adds the service name as well, so that services that only differ in their name still show up separately.Now both services show up as expected:
Related issues
GUI
, none seemed related.)Cherry-pick to