Qt: improve performance of related packet delegate

Use proper functions to lookup/iterate elements in QHash
Avoid useless lookup

Change-Id: I7a115ae5ed35b31599f33050e36bf68007167a96
Reviewed-on: https://code.wireshark.org/review/37304
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
This commit is contained in:
Nardi Ivan 2020-05-25 09:55:50 +02:00 committed by Roland Knall
parent 0708fadb33
commit c416e2ff37
1 changed files with 3 additions and 3 deletions

View File

@ -283,14 +283,14 @@ void RelatedPacketDelegate::clear()
void RelatedPacketDelegate::setCurrentFrame(guint32 current_frame)
{
current_frame_ = current_frame;
foreach (int frame_num, related_frames_.keys()) {
addRelatedFrame(frame_num, related_frames_[frame_num]);
foreach (ft_framenum_type_t framenum_type, related_frames_) {
addRelatedFrame(-1, framenum_type); /* No need to check if this element belongs to the hash... */
}
}
void RelatedPacketDelegate::addRelatedFrame(int frame_num, ft_framenum_type_t framenum_type)
{
if (!related_frames_.keys().contains(frame_num))
if (frame_num != -1 && !related_frames_.contains(frame_num))
related_frames_[frame_num] = framenum_type;
// Last match wins. Last match might not make sense, however.