Skip to content

Overlapping frames on different channels cause BubbleText display issue #29

Description

@nburek

I am attempting to generate multiple types of Frames and have them display on two different channels as bubble text. When doing this I am having issues with the bubble text not appearing consistently.

The start/stop samples for the first type of Frame span the entire transaction on the first channel and the second type of Frame will have multiple occurrences with start/stop sample numbers falling between the start/stop of the first Frame type. In my GenerateBubbleText function I then selectively add a result string only if it is the correct frame type for the correct channel (see function below).

void ExecutionTimeAnalyzerResults::GenerateBubbleText( U64 frame_index, Channel& channel, DisplayBase display_base )
{
    ClearResultStrings();
    Frame frame = GetFrame( frame_index );

    if (channel == mSettings->mInputTimerChannel && 0 == frame.mType) {
        char number_str[128];
        AnalyzerHelpers::GetNumberString( frame.mData1, display_base, 32, number_str, 128 );
        AddResultString(number_str);
    } else if (channel == mSettings->mInputSubTimerChannel && 1 == frame.mType) {
        char number_str[128];
        AnalyzerHelpers::GetNumberString( frame.mData1, display_base, 32, number_str, 128 );
        AddResultString(number_str);
    }

}

I get inconsistent display results as a zoom in and out, where there bubble text on the second channel pop in and out and seem to add an additional invisible frame to the group when it combines them. As far as I can tell, even though I didn't add a result string for the first frame type on the second channel it is still trying to render it sometimes and this causes issues with the overlapping second frame type.

I am using Logic-2.3.47-master.AppImage on Ubuntu 20.04.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions