diff options
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | hw/char/serial.c | 6 |
2 files changed, 5 insertions, 3 deletions
@@ -376,7 +376,7 @@ endif ifneq ($(CONFIG_MODULES),) $(INSTALL_DIR) "$(DESTDIR)$(qemu_moddir)" for s in $(patsubst %.mo,%$(DSOSUF),$(modules-m)); do \ - $(INSTALL_PROG) $(STRIP_OPT) $$s "$(DESTDIR)$(qemu_moddir)/$${s//\//-}"; \ + $(INSTALL_PROG) $(STRIP_OPT) $$s "$(DESTDIR)$(qemu_moddir)/$$(echo $$s | tr / -)"; \ done endif ifneq ($(HELPERS-y),) diff --git a/hw/char/serial.c b/hw/char/serial.c index 6d3b5aff8b..f4d167f916 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -225,8 +225,10 @@ static gboolean serial_xmit(GIOChannel *chan, GIOCondition cond, void *opaque) if (s->tsr_retry <= 0) { if (s->fcr & UART_FCR_FE) { - s->tsr = fifo8_is_empty(&s->xmit_fifo) ? - 0 : fifo8_pop(&s->xmit_fifo); + if (fifo8_is_empty(&s->xmit_fifo)) { + return FALSE; + } + s->tsr = fifo8_pop(&s->xmit_fifo); if (!s->xmit_fifo.num) { s->lsr |= UART_LSR_THRE; } |