From f0212ddb98161679fe731c6d65129c302ec6cfcd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20N=C3=BCcke?= Date: Sat, 19 Sep 2020 18:33:33 +0200 Subject: [PATCH] Fixed potential illegal read from UART queue after clear. --- src/main/java/li/cil/circuity/vm/device/UART16550A.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/li/cil/circuity/vm/device/UART16550A.java b/src/main/java/li/cil/circuity/vm/device/UART16550A.java index 85d3e2e9..7f140a71 100644 --- a/src/main/java/li/cil/circuity/vm/device/UART16550A.java +++ b/src/main/java/li/cil/circuity/vm/device/UART16550A.java @@ -392,7 +392,7 @@ public final class UART16550A implements Resettable, Steppable, MemoryMappedDevi } if (forceClear || (value & UART_FCR_XFR) != 0) { synchronized (transmitFifo) { - lsr |= UART_LSR_THRE; + lsr |= UART_LSR_THRE | UART_LSR_TEMT; transmitInterruptPending = true; transmitFifo.clear(); }