ui/console.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)
Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
---
ui/console.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/ui/console.c b/ui/console.c
index da434ce1b2f..1752f2ec889 100644
--- a/ui/console.c
+++ b/ui/console.c
@@ -1886,6 +1886,9 @@ void dpy_gl_scanout_disable(QemuConsole *con)
con->scanout.kind = SCANOUT_NONE;
}
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_scanout_disable) {
dcl->ops->dpy_gl_scanout_disable(dcl);
}
@@ -1909,6 +1912,9 @@ void dpy_gl_scanout_texture(QemuConsole *con,
x, y, width, height
};
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_scanout_texture) {
dcl->ops->dpy_gl_scanout_texture(dcl, backing_id,
backing_y_0_top,
@@ -1927,6 +1933,9 @@ void dpy_gl_scanout_dmabuf(QemuConsole *con,
con->scanout.kind = SCANOUT_DMABUF;
con->scanout.dmabuf = dmabuf;
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_scanout_dmabuf) {
dcl->ops->dpy_gl_scanout_dmabuf(dcl, dmabuf);
}
@@ -1940,6 +1949,9 @@ void dpy_gl_cursor_dmabuf(QemuConsole *con, QemuDmaBuf *dmabuf,
DisplayChangeListener *dcl;
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_cursor_dmabuf) {
dcl->ops->dpy_gl_cursor_dmabuf(dcl, dmabuf,
have_hot, hot_x, hot_y);
@@ -1954,6 +1966,9 @@ void dpy_gl_cursor_position(QemuConsole *con,
DisplayChangeListener *dcl;
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_cursor_position) {
dcl->ops->dpy_gl_cursor_position(dcl, pos_x, pos_y);
}
@@ -1967,6 +1982,9 @@ void dpy_gl_release_dmabuf(QemuConsole *con,
DisplayChangeListener *dcl;
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_release_dmabuf) {
dcl->ops->dpy_gl_release_dmabuf(dcl, dmabuf);
}
@@ -1983,6 +2001,9 @@ void dpy_gl_update(QemuConsole *con,
graphic_hw_gl_block(con, true);
QLIST_FOREACH(dcl, &s->listeners, next) {
+ if (con != (dcl->con ? dcl->con : active_console)) {
+ continue;
+ }
if (dcl->ops->dpy_gl_update) {
dcl->ops->dpy_gl_update(dcl, x, y, w, h);
}
--
2.32.0 (Apple Git-132)
Hi
On Fri, Mar 25, 2022 at 1:53 PM Akihiko Odaki <akihiko.odaki@gmail.com>
wrote:
> Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Akihiko, is this fixing a visible bug? If so, it would be nice you detail
it in the commit message and someone should queue it for 7.0
thanks
> ---
> ui/console.c | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> diff --git a/ui/console.c b/ui/console.c
> index da434ce1b2f..1752f2ec889 100644
> --- a/ui/console.c
> +++ b/ui/console.c
> @@ -1886,6 +1886,9 @@ void dpy_gl_scanout_disable(QemuConsole *con)
> con->scanout.kind = SCANOUT_NONE;
> }
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_scanout_disable) {
> dcl->ops->dpy_gl_scanout_disable(dcl);
> }
> @@ -1909,6 +1912,9 @@ void dpy_gl_scanout_texture(QemuConsole *con,
> x, y, width, height
> };
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_scanout_texture) {
> dcl->ops->dpy_gl_scanout_texture(dcl, backing_id,
> backing_y_0_top,
> @@ -1927,6 +1933,9 @@ void dpy_gl_scanout_dmabuf(QemuConsole *con,
> con->scanout.kind = SCANOUT_DMABUF;
> con->scanout.dmabuf = dmabuf;
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_scanout_dmabuf) {
> dcl->ops->dpy_gl_scanout_dmabuf(dcl, dmabuf);
> }
> @@ -1940,6 +1949,9 @@ void dpy_gl_cursor_dmabuf(QemuConsole *con,
> QemuDmaBuf *dmabuf,
> DisplayChangeListener *dcl;
>
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_cursor_dmabuf) {
> dcl->ops->dpy_gl_cursor_dmabuf(dcl, dmabuf,
> have_hot, hot_x, hot_y);
> @@ -1954,6 +1966,9 @@ void dpy_gl_cursor_position(QemuConsole *con,
> DisplayChangeListener *dcl;
>
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_cursor_position) {
> dcl->ops->dpy_gl_cursor_position(dcl, pos_x, pos_y);
> }
> @@ -1967,6 +1982,9 @@ void dpy_gl_release_dmabuf(QemuConsole *con,
> DisplayChangeListener *dcl;
>
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_release_dmabuf) {
> dcl->ops->dpy_gl_release_dmabuf(dcl, dmabuf);
> }
> @@ -1983,6 +2001,9 @@ void dpy_gl_update(QemuConsole *con,
>
> graphic_hw_gl_block(con, true);
> QLIST_FOREACH(dcl, &s->listeners, next) {
> + if (con != (dcl->con ? dcl->con : active_console)) {
> + continue;
> + }
> if (dcl->ops->dpy_gl_update) {
> dcl->ops->dpy_gl_update(dcl, x, y, w, h);
> }
> --
> 2.32.0 (Apple Git-132)
>
>
>
--
Marc-André Lureau
© 2016 - 2026 Red Hat, Inc.