diff --git a/libraries/base/diag/src/vhdl/diag_block_gen.vhd b/libraries/base/diag/src/vhdl/diag_block_gen.vhd
index 0f1104b33bb3c5c57ac731afe297acc8ccb66535..5275ee4ef79417fc791dbda3fc25dd99a39556e6 100644
--- a/libraries/base/diag/src/vhdl/diag_block_gen.vhd
+++ b/libraries/base/diag/src/vhdl/diag_block_gen.vhd
@@ -216,7 +216,7 @@ begin
             if v.eop = '1' and r.blk_en = '0' then
               v.state := s_idle;          -- accept disable after eop, not during block
             end if;
-            if r.eop = '1' then
+            if v.eop = '1' then
               v.blk_xon := xon_reg;  -- accept XOFF after eop, not during block
             end if;