fix(dmr): avoid stale and mislabeled talkgroups

This commit is contained in:
2026-07-14 21:30:41 +03:00
parent 7c4b024186
commit fa5a95ca5d
3 changed files with 32 additions and 5 deletions
+3 -2
View File
@@ -3606,7 +3606,7 @@ end;
function TMainForm.DMRStatusText: string;
var
S: TDMRStatus;
Inv, Details: string;
Inv, Details, TargetText: string;
begin
if not FController.GetDMRStatus(S) then Exit('DMR unavailable');
if not S.Enabled then Exit('DMR off');
@@ -3617,7 +3617,8 @@ begin
else if S.CACHValid then Details := Format(' TS%d', [S.Slot + 1]);
if S.SlotTypeValid then
Details := Details + Format(' CC%d/DT%d', [S.ColorCode, S.DataType]);
if S.LinkControlValid then Details := Details + Format(' TG%d', [S.TargetID]);
TargetText := TDMRDecoder.LinkControlTargetText(S);
if TargetText <> '' then Details := Details + ' ' + TargetText;
Result := Format('DMR %s%s%s #%d',
[TDMRDecoder.SyncKindName(S.SyncKind), Details, Inv,
S.SyncCount]);