xemu/ui
Laszlo Ersek 65d7ceb49b ui/console: sanitize search in qemu_graphic_console_is_multihead()
qemu_graphic_console_is_multihead() declares the graphical console "c" a
"multihead" console if there are two different graphical consoles in the
system that (a) both reference "c->device", and (b) have different
"c->head" numbers. In effect, if at least two graphical consoles exist
that are different heads of the same device that underlies "c". In fact,
"c" may be one of these two graphical consoles, or "c" may differ from
both of those consoles (in case "c->device" has at least three heads).

The loop currently uses this awkward "two different consoles" approach
because the function used not to have access to "c", only to "c->device",
which didn't allow for fetching (and comparing) "c->head". But, we've
changed that in the last patch; we now pass all of "c" to
qemu_graphic_console_is_multihead().

Thus, look for the *first* (and possibly *only*) graphical console, if
any, that refers to the same "device" as "c", but by a different "head"
number.

Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com> (odd fixer:Graphics)
Cc: Gerd Hoffmann <kraxel@redhat.com> (odd fixer:Graphics)
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230913144959.41891-5-lersek@redhat.com>
2023-10-03 15:04:56 +04:00
..
icons configure: move directory options from config-host.mak to meson 2020-10-26 07:08:38 -04:00
shader ui/shader: fix #version directive must occur on first line 2023-03-13 23:48:45 +04:00
clipboard.c ui/clipboard: reset the serial state on reset 2022-09-23 14:38:27 +02:00
cocoa.m input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
console-gl.c ui/console: remove redundant format field 2023-09-12 10:37:02 +04:00
console-priv.h ui/vc: split off the VC part from console.c 2023-09-12 10:37:02 +04:00
console-vc.c ui/vc: split off the VC part from console.c 2023-09-12 10:37:02 +04:00
console.c ui/console: sanitize search in qemu_graphic_console_is_multihead() 2023-10-03 15:04:56 +04:00
curses.c ui/vc: rename kbd_put to qemu_text_console functions 2023-09-12 10:37:02 +04:00
curses_keys.h For curses display, recognize a few more control keys 2023-07-25 10:56:51 +01:00
cursor.c ui/cursor: make width/height unsigned 16-bit integer 2023-05-28 13:08:25 +04:00
cursor_hidden.xpm ui: move files to ui/ and include/ui/ 2012-12-19 08:31:30 +01:00
cursor_left_ptr.xpm ui: move files to ui/ and include/ui/ 2012-12-19 08:31:30 +01:00
dbus-chardev.c ui/dbus: win32 support 2023-06-27 17:08:56 +02:00
dbus-clipboard.c ui/dbus: unregister clipboard on connection close 2023-03-13 22:57:39 +04:00
dbus-console.c input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
dbus-display1.xml ui/dbus: use shared D3D11 Texture2D when possible 2023-06-27 17:08:56 +02:00
dbus-error.c ui: add a D-Bus display backend 2021-12-21 10:50:22 +04:00
dbus-listener.c ui/dbus: implement damage regions for GL 2023-09-04 15:14:48 +04:00
dbus-module.c ui/dbus: add p2p=on/off option 2021-12-21 10:50:22 +04:00
dbus.c ui/dbus: add GL support on win32 2023-06-27 17:08:56 +02:00
dbus.h ui/dbus: win32 support 2023-06-27 17:08:56 +02:00
egl-context.c ui/egl: fix make_context_current() callback return value 2023-06-27 17:08:56 +02:00
egl-headless.c ui: add optional d3d texture pointer to scanout texture 2023-06-27 17:08:56 +02:00
egl-helpers.c virtio-gpu-udmabuf: correct naming of QemuDmaBuf size properties 2023-07-17 15:22:28 +04:00
gtk-clipboard.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
gtk-egl.c ui/gtk: set scanout mode in gd_egl/gd_gl_area_scanout_texture 2023-08-07 17:13:42 +04:00
gtk-gl-area.c ui/gtk: set scanout mode in gd_egl/gd_gl_area_scanout_texture 2023-08-07 17:13:42 +04:00
gtk.c input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
input-barrier.c ui/input-barrier: Move TODOs from barrier.txt to a comment 2021-08-02 12:55:51 +01:00
input-barrier.h ui: add an embedded Barrier client 2019-09-17 13:43:22 +02:00
input-keymap.c meson: rename included C source files to .c.inc 2020-08-21 06:18:30 -04:00
input-legacy.c ui/input-legacy: pass horizontal scroll information 2022-01-13 15:33:18 +01:00
input-linux.c ui: replace qemu_set_nonblock() 2022-05-03 15:52:37 +04:00
input.c input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
kbd-state.c Include qemu/queue.h slightly less 2019-08-16 13:31:52 +02:00
keymaps.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
keymaps.h ui: spelling fixes 2023-08-31 19:47:43 +02:00
meson.build ui/vc: split off the VC part from console.c 2023-09-12 10:37:02 +04:00
qemu-pixman.c ui: remove qemu_pixman_linebuf_copy() 2023-09-01 17:21:04 +00:00
qemu-x509.h ui: move files to ui/ and include/ui/ 2012-12-19 08:31:30 +01:00
qemu.desktop ui: fix icon display for GTK frontend under GNOME Shell with Wayland 2019-01-21 09:43:13 +01:00
sdl2-2d.c ui: spelling fixes 2023-08-31 19:47:43 +02:00
sdl2-gl.c ui: add optional d3d texture pointer to scanout texture 2023-06-27 17:08:56 +02:00
sdl2-input.c ui/vc: rename kbd_put to qemu_text_console functions 2023-09-12 10:37:02 +04:00
sdl2.c input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
shader.c ui/shader: free associated programs 2022-03-14 15:16:16 +04:00
spice-app.c ui/vc: do not parse VC-specific options in Spice and GTK 2023-09-04 14:57:37 +04:00
spice-core.c ui/spice: fix compilation on win32 2023-03-24 11:55:55 +01:00
spice-display.c ui: Clean up local variable shadowing 2023-09-29 08:13:57 +02:00
spice-input.c input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
spice-module.c spice: wire up monitor in QemuSpiceOps. 2020-10-21 15:46:14 +02:00
trace-events input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
udmabuf.c Do not include "qemu/error-report.h" in headers that do not need it 2023-02-14 09:11:27 +01:00
ui-hmp-cmds.c spice: move client_migrate_info command to ui/ 2023-04-24 15:01:46 +02:00
ui-qmp-cmds.c ui/qmp: move screendump to ui-qmp-cmds.c 2023-09-01 17:21:04 +00:00
util.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
vdagent.c ui/vdagent: Unregister input handler of mouse during finalization 2023-09-04 15:29:07 +04:00
vgafont.h ui: fix tab indentation 2022-11-08 10:23:06 +01:00
vnc-auth-sasl.c vnc: avoid deprecation warnings for SASL on OS X 2021-06-15 17:17:09 +02:00
vnc-auth-sasl.h vnc: avoid deprecation warnings for SASL on OS X 2021-06-15 17:17:09 +02:00
vnc-auth-vencrypt.c vnc: fix resource leak when websocket channel error 2020-11-04 08:25:17 +01:00
vnc-auth-vencrypt.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
vnc-clipboard.c ui/vnc-clipboard: fix infinite loop in inflate_buffer (CVE-2023-3255) 2023-07-17 15:20:56 +04:00
vnc-enc-hextile-template.h ui/vnc-enc-hextile: Use static rather than dynamic length stack array 2023-09-04 14:57:44 +04:00
vnc-enc-hextile.c Drop useless casts from g_malloc() & friends to pointer 2022-10-22 23:15:40 +02:00
vnc-enc-tight.c ui/vnc-enc-tight: Avoid dynamic stack allocation 2023-09-04 14:57:44 +04:00
vnc-enc-tight.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
vnc-enc-zlib.c vnc: fix memory leak when vnc disconnect 2019-09-17 13:45:10 +02:00
vnc-enc-zrle.c meson: rename included C source files to .c.inc 2020-08-21 06:18:30 -04:00
vnc-enc-zrle.c.inc ui: Clean up local variable shadowing 2023-09-29 08:13:57 +02:00
vnc-enc-zrle.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
vnc-enc-zywrle-template.c ui: fix tab indentation 2022-11-08 10:23:06 +01:00
vnc-enc-zywrle.h ui: spelling fixes 2023-08-31 19:47:43 +02:00
vnc-jobs.c vnc: move assert in vnc_worker_thread_loop 2023-06-10 00:00:24 +03:00
vnc-jobs.h ui/vnc: Drop unused vnc_has_job() and vnc_jobs_clear() 2017-02-08 14:59:36 +01:00
vnc-palette.c ui: Clean up local variable shadowing 2023-09-29 08:13:57 +02:00
vnc-palette.h Include qapi/qmp/qlist.h exactly where needed 2018-02-09 13:52:15 +01:00
vnc-stubs.c vnc: support "-vnc help" 2021-01-23 15:55:07 -05:00
vnc-ws.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
vnc-ws.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
vnc.c input: Allow to choose console with qemu_input_is_absolute 2023-10-03 15:04:56 +04:00
vnc.h ui: keep current cursor with QemuConsole 2023-03-13 22:57:39 +04:00
vnc_keysym.h ui: fix tab indentation 2022-11-08 10:23:06 +01:00
win32-kbd-hook.c ui/win32-kbd-hook: handle AltGr in a hook procedure 2020-05-19 09:06:44 +02:00
x_keymap.c ui: Fix memory leak in qemu_xkeymap_mapping_table() 2021-05-02 17:24:50 +02:00
x_keymap.h ui: convert GTK and SDL1 frontends to keycodemapdb 2018-01-25 15:02:00 +01:00