From patchwork Mon Jun 3 15:18:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 13683910 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B8E57C25B75 for ; Mon, 3 Jun 2024 15:18:51 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.734954.1141096 (Exim 4.92) (envelope-from ) id 1sE9SG-0003E5-Q2; Mon, 03 Jun 2024 15:18:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 734954.1141096; Mon, 03 Jun 2024 15:18:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sE9SG-0003Dy-MV; Mon, 03 Jun 2024 15:18:36 +0000 Received: by outflank-mailman (input) for mailman id 734954; Mon, 03 Jun 2024 15:18:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sE9SE-0002zU-U7 for xen-devel@lists.xenproject.org; Mon, 03 Jun 2024 15:18:34 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 89ebe9ba-21bc-11ef-b4bb-af5377834399; Mon, 03 Jun 2024 17:18:33 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-126-Iy7WdosbNt6_HMy2-StTTQ-1; Mon, 03 Jun 2024 11:18:28 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B2E04185AD2C; Mon, 3 Jun 2024 15:18:27 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.239]) by smtp.corp.redhat.com (Postfix) with ESMTPS id DC73F1050176; Mon, 3 Jun 2024 15:18:26 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 0C05718009AD; Mon, 3 Jun 2024 17:18:26 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 89ebe9ba-21bc-11ef-b4bb-af5377834399 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1717427912; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=vkSiq4a30KX/BtKlzALhqQstMUl79qOxtGFoh3xybvE=; b=ZaHkqAfY0prOxd9IsvYxn3cjrCzTyehr8LM8V/cUr8u9y8nC/gDT5zr1ezo0VbF63ReQG+ CBYhNOd6hphyBpYhd13PoMbmI+ht2ARPhFcgQ3GGJWR00thyODBbGPvDYo+LDKiipCYas2 ADA1VUyxfjUmHRSDEFClWjtIl46k7HI= X-MC-Unique: Iy7WdosbNt6_HMy2-StTTQ-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: Anthony PERARD , Gerd Hoffmann , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Paul Durrant , xen-devel@lists.xenproject.org, Stefano Stabellini , qemu-stable@nongnu.org Subject: [PATCH v2 1/3] stdvga: fix screen blanking Date: Mon, 3 Jun 2024 17:18:23 +0200 Message-ID: <20240603151825.188353-2-kraxel@redhat.com> In-Reply-To: <20240603151825.188353-1-kraxel@redhat.com> References: <20240603151825.188353-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.3 In case the display surface uses a shared buffer (i.e. uses vga vram directly instead of a shadow) go unshare the buffer before clearing it. This avoids vga memory corruption, which in turn fixes unblanking not working properly with X11. Cc: qemu-stable@nongnu.org Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2067 Signed-off-by: Gerd Hoffmann --- hw/display/vga.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/display/vga.c b/hw/display/vga.c index 30facc6c8e33..474b6b14c327 100644 --- a/hw/display/vga.c +++ b/hw/display/vga.c @@ -1762,6 +1762,12 @@ static void vga_draw_blank(VGACommonState *s, int full_update) if (s->last_scr_width <= 0 || s->last_scr_height <= 0) return; + if (is_buffer_shared(surface)) { + /* unshare buffer, otherwise the blanking corrupts vga vram */ + surface = qemu_create_displaysurface(s->last_scr_width, s->last_scr_height); + dpy_gfx_replace_surface(s->con, surface); + } + w = s->last_scr_width * surface_bytes_per_pixel(surface); d = surface_data(surface); for(i = 0; i < s->last_scr_height; i++) { From patchwork Mon Jun 3 15:18:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 13683912 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7C9FBC25B75 for ; Mon, 3 Jun 2024 15:18:55 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.734955.1141102 (Exim 4.92) (envelope-from ) id 1sE9SH-0003Fp-2r; Mon, 03 Jun 2024 15:18:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 734955.1141102; Mon, 03 Jun 2024 15:18:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sE9SG-0003FU-Te; Mon, 03 Jun 2024 15:18:36 +0000 Received: by outflank-mailman (input) for mailman id 734955; Mon, 03 Jun 2024 15:18:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sE9SF-00030f-Uq for xen-devel@lists.xenproject.org; Mon, 03 Jun 2024 15:18:35 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8ad6c8c0-21bc-11ef-90a1-e314d9c70b13; Mon, 03 Jun 2024 17:18:35 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-391-On8TU32lNrWFK8D0XWJUxg-1; Mon, 03 Jun 2024 11:18:30 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id EDB9D85A58C; Mon, 3 Jun 2024 15:18:29 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.239]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9BC29C15C05; Mon, 3 Jun 2024 15:18:28 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 2456C1801F28; Mon, 3 Jun 2024 17:18:26 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8ad6c8c0-21bc-11ef-90a1-e314d9c70b13 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1717427913; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=i8kzX9DrYOhcqIvJMNJmWCuMKiFj8etOtZj3EnRy0I8=; b=KXPNlJd0dPNGAyLTTPnQJdbWxIZg0IVS5BACVvB7Et5xtwkDB2JLk6+aAlgNVJ0AKgps2W 6vI0SrYd6fqGqggHovJbyZIRWiifwasDBsbJb7ofLw5Q0S+cf17vKW1qdIJr59HHui23jd DfoOgNvzkTdervHZe+fij4wUFD2QLvw= X-MC-Unique: On8TU32lNrWFK8D0XWJUxg-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: Anthony PERARD , Gerd Hoffmann , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Paul Durrant , xen-devel@lists.xenproject.org, Stefano Stabellini , =?utf-8?q?Marc-Andr=C3=A9_Lure?= =?utf-8?q?au?= Subject: [PATCH v2 2/3] ui+display: rename is_buffer_shared() -> surface_is_borrowed() Date: Mon, 3 Jun 2024 17:18:24 +0200 Message-ID: <20240603151825.188353-3-kraxel@redhat.com> In-Reply-To: <20240603151825.188353-1-kraxel@redhat.com> References: <20240603151825.188353-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.8 No functional change. Suggested-by: Marc-André Lureau Signed-off-by: Gerd Hoffmann --- include/ui/surface.h | 2 +- hw/display/qxl-render.c | 2 +- hw/display/vga.c | 10 +++++----- hw/display/xenfb.c | 4 ++-- ui/console.c | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/ui/surface.h b/include/ui/surface.h index 4244e0ca4a32..96f9b1611c1c 100644 --- a/include/ui/surface.h +++ b/include/ui/surface.h @@ -45,7 +45,7 @@ void qemu_displaysurface_win32_set_handle(DisplaySurface *surface, DisplaySurface *qemu_create_displaysurface(int width, int height); void qemu_free_displaysurface(DisplaySurface *surface); -static inline int is_buffer_shared(DisplaySurface *surface) +static inline int surface_is_borrowed(DisplaySurface *surface) { return !(surface->flags & QEMU_ALLOCATED_FLAG); } diff --git a/hw/display/qxl-render.c b/hw/display/qxl-render.c index ec99ec887a6e..bfdf2c59bdbe 100644 --- a/hw/display/qxl-render.c +++ b/hw/display/qxl-render.c @@ -31,7 +31,7 @@ static void qxl_blit(PCIQXLDevice *qxl, QXLRect *rect) uint8_t *src; int len, i; - if (is_buffer_shared(surface)) { + if (surface_is_borrowed(surface)) { return; } trace_qxl_render_blit(qxl->guest_primary.qxl_stride, diff --git a/hw/display/vga.c b/hw/display/vga.c index 474b6b14c327..bd800a683e45 100644 --- a/hw/display/vga.c +++ b/hw/display/vga.c @@ -1620,7 +1620,7 @@ static void vga_draw_graphic(VGACommonState *s, int full_update) height != s->last_height || s->last_depth != depth || s->last_byteswap != byteswap || - share_surface != is_buffer_shared(surface)) { + share_surface != surface_is_borrowed(surface)) { /* display parameters changed -> need new display surface */ s->last_scr_width = disp_width; s->last_scr_height = height; @@ -1635,7 +1635,7 @@ static void vga_draw_graphic(VGACommonState *s, int full_update) full_update = 1; } if (surface_data(surface) != s->vram_ptr + (s->params.start_addr * 4) - && is_buffer_shared(surface)) { + && surface_is_borrowed(surface)) { /* base address changed (page flip) -> shared display surfaces * must be updated with the new base address */ full_update = 1; @@ -1655,7 +1655,7 @@ static void vga_draw_graphic(VGACommonState *s, int full_update) vga_draw_line = vga_draw_line_table[v]; - if (!is_buffer_shared(surface) && s->cursor_invalidate) { + if (!surface_is_borrowed(surface) && s->cursor_invalidate) { s->cursor_invalidate(s); } @@ -1707,7 +1707,7 @@ static void vga_draw_graphic(VGACommonState *s, int full_update) if (update) { if (y_start < 0) y_start = y; - if (!(is_buffer_shared(surface))) { + if (!(surface_is_borrowed(surface))) { uint8_t *p; p = vga_draw_line(s, d, addr, width, hpel); if (p) { @@ -1762,7 +1762,7 @@ static void vga_draw_blank(VGACommonState *s, int full_update) if (s->last_scr_width <= 0 || s->last_scr_height <= 0) return; - if (is_buffer_shared(surface)) { + if (surface_is_borrowed(surface)) { /* unshare buffer, otherwise the blanking corrupts vga vram */ surface = qemu_create_displaysurface(s->last_scr_width, s->last_scr_height); dpy_gfx_replace_surface(s->con, surface); diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c index 27536bfce0cb..a9bc5a08cdc2 100644 --- a/hw/display/xenfb.c +++ b/hw/display/xenfb.c @@ -637,7 +637,7 @@ static void xenfb_guest_copy(struct XenFB *xenfb, int x, int y, int w, int h) int linesize = surface_stride(surface); uint8_t *data = surface_data(surface); - if (!is_buffer_shared(surface)) { + if (!surface_is_borrowed(surface)) { switch (xenfb->depth) { case 8: if (bpp == 16) { @@ -755,7 +755,7 @@ static void xenfb_update(void *opaque) xen_pv_printf(&xenfb->c.xendev, 1, "update: resizing: %dx%d @ %d bpp%s\n", xenfb->width, xenfb->height, xenfb->depth, - is_buffer_shared(surface) ? " (shared)" : ""); + surface_is_borrowed(surface) ? " (borrowed)" : ""); xenfb->up_fullscreen = 1; } diff --git a/ui/console.c b/ui/console.c index 1b2cd0c7365d..d7967ddb0d1a 100644 --- a/ui/console.c +++ b/ui/console.c @@ -1510,7 +1510,7 @@ void qemu_console_resize(QemuConsole *s, int width, int height) assert(QEMU_IS_GRAPHIC_CONSOLE(s)); if ((s->scanout.kind != SCANOUT_SURFACE || - (surface && !is_buffer_shared(surface) && !is_placeholder(surface))) && + (surface && !surface_is_borrowed(surface) && !is_placeholder(surface))) && qemu_console_get_width(s, -1) == width && qemu_console_get_height(s, -1) == height) { return; From patchwork Mon Jun 3 15:18:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 13683909 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3B4F1C25B75 for ; Mon, 3 Jun 2024 15:18:49 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.734956.1141109 (Exim 4.92) (envelope-from ) id 1sE9SH-0003OL-Dx; Mon, 03 Jun 2024 15:18:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 734956.1141109; Mon, 03 Jun 2024 15:18:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sE9SH-0003N1-84; Mon, 03 Jun 2024 15:18:37 +0000 Received: by outflank-mailman (input) for mailman id 734956; Mon, 03 Jun 2024 15:18:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sE9SG-00030f-Jv for xen-devel@lists.xenproject.org; Mon, 03 Jun 2024 15:18:36 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8b0febaf-21bc-11ef-90a1-e314d9c70b13; Mon, 03 Jun 2024 17:18:35 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-423-PXlMk71_P76Ne_v4g56O5A-1; Mon, 03 Jun 2024 11:18:30 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C21E6800CAC; Mon, 3 Jun 2024 15:18:29 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.239]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2FC58200C7E4; Mon, 3 Jun 2024 15:18:29 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 3947B1801F2C; Mon, 3 Jun 2024 17:18:26 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8b0febaf-21bc-11ef-90a1-e314d9c70b13 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1717427913; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iOjw8WHuKXRxil9Kra4lnYZ4J/Am36P/OUiaBQSEgzM=; b=RZor1nEUcfmVcmlwWgxeR7adys+ZH4GwivoHx7qCeeBIoZb/byKhDD301HJjhcA7iWe8vW zLSSTbgb4tBhoL1Cb0e2ykF44Y3pd0/M9oQuzU+WJ02yGzHq5k/KZqP6OZHGuOe9sbSzLm nyWUZuNeHaluN1g+OiJrcBbKpcNkUEU= X-MC-Unique: PXlMk71_P76Ne_v4g56O5A-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: Anthony PERARD , Gerd Hoffmann , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Paul Durrant , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: [PATCH v2 3/3] ui+display: rename is_placeholder -> surface_is_placeholder Date: Mon, 3 Jun 2024 17:18:25 +0200 Message-ID: <20240603151825.188353-4-kraxel@redhat.com> In-Reply-To: <20240603151825.188353-1-kraxel@redhat.com> References: <20240603151825.188353-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.6 No functional change. Signed-off-by: Gerd Hoffmann --- include/ui/surface.h | 2 +- ui/console.c | 2 +- ui/sdl2-2d.c | 2 +- ui/sdl2-gl.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/ui/surface.h b/include/ui/surface.h index 96f9b1611c1c..60416a451901 100644 --- a/include/ui/surface.h +++ b/include/ui/surface.h @@ -50,7 +50,7 @@ static inline int surface_is_borrowed(DisplaySurface *surface) return !(surface->flags & QEMU_ALLOCATED_FLAG); } -static inline int is_placeholder(DisplaySurface *surface) +static inline int surface_is_placeholder(DisplaySurface *surface) { return surface->flags & QEMU_PLACEHOLDER_FLAG; } diff --git a/ui/console.c b/ui/console.c index d7967ddb0d1a..3bd2adcc33c3 100644 --- a/ui/console.c +++ b/ui/console.c @@ -1510,7 +1510,7 @@ void qemu_console_resize(QemuConsole *s, int width, int height) assert(QEMU_IS_GRAPHIC_CONSOLE(s)); if ((s->scanout.kind != SCANOUT_SURFACE || - (surface && !surface_is_borrowed(surface) && !is_placeholder(surface))) && + (surface && !surface_is_borrowed(surface) && !surface_is_placeholder(surface))) && qemu_console_get_width(s, -1) == width && qemu_console_get_height(s, -1) == height) { return; diff --git a/ui/sdl2-2d.c b/ui/sdl2-2d.c index 06468cd493ea..73052383c2e0 100644 --- a/ui/sdl2-2d.c +++ b/ui/sdl2-2d.c @@ -72,7 +72,7 @@ void sdl2_2d_switch(DisplayChangeListener *dcl, scon->texture = NULL; } - if (is_placeholder(new_surface) && qemu_console_get_index(dcl->con)) { + if (surface_is_placeholder(new_surface) && qemu_console_get_index(dcl->con)) { sdl2_window_destroy(scon); return; } diff --git a/ui/sdl2-gl.c b/ui/sdl2-gl.c index 28d796607c08..91b7ee2419b7 100644 --- a/ui/sdl2-gl.c +++ b/ui/sdl2-gl.c @@ -89,7 +89,7 @@ void sdl2_gl_switch(DisplayChangeListener *dcl, scon->surface = new_surface; - if (is_placeholder(new_surface) && qemu_console_get_index(dcl->con)) { + if (surface_is_placeholder(new_surface) && qemu_console_get_index(dcl->con)) { qemu_gl_fini_shader(scon->gls); scon->gls = NULL; sdl2_window_destroy(scon);