On Sun, Mar 16, 2025 at 12:18:39 +0400, marcandre.lureau--- via Devel wrote:
> From: Marc-André Lureau <marcandre.lur...@redhat.com>
> 
> Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com>
> Reviewed-by: Martin Kletzander <mklet...@redhat.com>
> ---


> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> index ca99e61896..2c137bb663 100644
> --- a/src/qemu/qemu_capabilities.c
> +++ b/src/qemu/qemu_capabilities.c
> @@ -6475,7 +6475,8 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCaps 
> *qemuCaps,
>  
>  
>  void
> -virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUCaps *qemuCaps,
> +virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUDriverConfig *cfg,
> +                                        virQEMUCaps *qemuCaps,
>                                          virDomainCapsDeviceGraphics *dev)
>  {
>      dev->supported = VIR_TRISTATE_BOOL_YES;
> @@ -6489,8 +6490,14 @@ virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUCaps 
> *qemuCaps,
>          VIR_DOMAIN_CAPS_ENUM_SET(dev->type, VIR_DOMAIN_GRAPHICS_TYPE_SPICE);
>      if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_EGL_HEADLESS))
>          VIR_DOMAIN_CAPS_ENUM_SET(dev->type, 
> VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS);
> -    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DISPLAY_DBUS))
> -        VIR_DOMAIN_CAPS_ENUM_SET(dev->type, VIR_DOMAIN_GRAPHICS_TYPE_DBUS);
> +    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DISPLAY_DBUS)) {
> +        VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
> +                                 VIR_DOMAIN_GRAPHICS_TYPE_DBUS);
> +        if (qemuRdpAvailable(cfg->qemuRdpName)) {
> +            VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
> +                                     VIR_DOMAIN_GRAPHICS_TYPE_RDP);

This produces spurious errors when 'qemu-rdp' is not installed. Also
execing 'qemu-rdp' while *filling* capabilities seems overkill:

https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/MMVHKMFVFJNYC442K43XLZV3IMPDUONH/

> +        }
> +    }
>  }

Reply via email to