fix flush

This commit is contained in:
2026-05-07 22:49:52 +03:00
parent 6067aae3dc
commit 28859d3e16
3 changed files with 34 additions and 0 deletions
+9
View File
@@ -4444,7 +4444,10 @@ begin
end;
procedure TMainForm.ApplyMOX(Active: Boolean);
var
WasTransmitting: Boolean;
begin
WasTransmitting := FTransmitting;
FTransmitting := Active;
FDUCPendingCount := 0;
if FTransmitting then
@@ -4468,6 +4471,12 @@ begin
if FWDSPReady then
begin
FDSPEngine.SetTXRun(FTransmitting);
if WasTransmitting and (not FTransmitting) and (not FDisplayDuplex) then
begin
FDSPEngine.FlushRX;
if Assigned(FAudioOut) then
FAudioOut.Clear;
end;
// SetTXRun переключает FActiveDisplayID на TX_DISP_ID; при DUP возвращаем
// источник на RX, чтобы видеть приём во время передачи.
if FTransmitting and FDisplayDuplex then