[Spice-devel] [PATCH 09/14] Fails CCD initialisation if get_config_buffers detect WDDM is not present

Frediano Ziglio fziglio at redhat.com
Thu Sep 1 15:01:11 UTC 2016


> On Thu, Sep 01, 2016 at 01:00:51PM +0100, Frediano Ziglio wrote:
> > There's no point continuing without WDDM as CCD cannot work without it.
> > 
> > Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> > ---
> >  vdagent/display_configuration.cpp | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/vdagent/display_configuration.cpp
> > b/vdagent/display_configuration.cpp
> > index 86f7f7b..5aed7be 100644
> > --- a/vdagent/display_configuration.cpp
> > +++ b/vdagent/display_configuration.cpp
> > @@ -844,6 +844,10 @@ bool CCD::get_config_buffers()
> >      LONG error(ERROR_SUCCESS);
> >      error = _pfnGetDisplayConfigBufferSizes(QDC_ALL_PATHS,
> >      &_numPathElements,
> >                                              &_numModeElements);
> > +    if (error == ERROR_NOT_SUPPORTED) {
> > +        vd_printf("GetDisplayConfigBufferSizes failed, missing WDDM");
> > +        throw std::exception();
> > +    }
> 
> Aren't we going to have trouble anyway if the other error cases in this
> method trigger?
> 
> Christophe
> 

Yes, but the errors are handled differently.
If not supported we know that it's a driver problem and we
just switch to XDDM code.

Frediano

> >      if (error) {
> >          vd_printf("%s: GetDisplayConfigBufferSizes failed with 0x%lx",
> >          __FUNCTION__, error);
> >          return false;



More information about the Spice-devel mailing list