--- a/module/rdpClientCon.c 2022-10-03 19:57:25.328159263 +0200 +++ b/module/rdpClientCon.c 2022-10-03 19:59:53.433316164 +0200 @@ -55,9 +55,8 @@ #if defined(XORGXRDP_LRANDR) #include "rdpLRandR.h" -#else -#include "rdpRandR.h" #endif +#include "rdpRandR.h" #define LOG_LEVEL 1 #define LLOGLN(_level, _args) \ @@ -849,19 +848,24 @@ if ((dev->width != width) || (dev->height != height)) { #if defined(XORGXRDP_LRANDR) - /* even though we are not using the built in randr, we still need - * to call this so driver can setup */ - ok = RRScreenSizeSet(dev->pScreen, width, height, mmwidth, mmheight); - LLOGLN(0, ("rdpClientConProcessScreenSizeMsg: RRScreenSizeSet ok=[%d]", ok)); - ok = rdpLRRScreenSizeSet(dev, width, height, mmwidth, mmheight); - LLOGLN(0, ("rdpClientConProcessScreenSizeMsg: LRRScreenSizeSet ok=[%d]", ok)); -#else - dev->allow_screen_resize = 1; - ok = RRScreenSizeSet(dev->pScreen, width, height, mmwidth, mmheight); - dev->allow_screen_resize = 0; - LLOGLN(0, ("rdpClientConProcessScreenSizeMsg: RRScreenSizeSet ok=[%d]", ok)); - RRTellChanged(dev->pScreen); + if (dev->nvidia) + { + /* even though we are not using the built in randr, we still need + * to call this so driver can setup */ + ok = RRScreenSizeSet(dev->pScreen, width, height, mmwidth, mmheight); + LLOGLN(0, ("rdpClientConProcessScreenSizeMsg: RRScreenSizeSet ok=[%d]", ok)); + ok = rdpLRRScreenSizeSet(dev, width, height, mmwidth, mmheight); + LLOGLN(0, ("rdpClientConProcessScreenSizeMsg: LRRScreenSizeSet ok=[%d]", ok)); + } + else + { #endif + dev->allow_screen_resize = 1; + ok = RRScreenSizeSet(dev->pScreen, width, height, mmwidth, mmheight); + dev->allow_screen_resize = 0; + LLOGLN(0, ("rdpClientConProcessScreenSizeMsg: RRScreenSizeSet ok=[%d]", ok)); + RRTellChanged(dev->pScreen); + } } return 0; @@ -1297,11 +1301,14 @@ dev->minfo[index].bottom)); } #if defined(XORGXRDP_LRANDR) - rdpLRRSetRdpOutputs(dev); -#else - rdpRRSetRdpOutputs(dev); - RRTellChanged(dev->pScreen); + if (dev->nvidia) + rdpLRRSetRdpOutputs(dev); + else #endif + { + rdpRRSetRdpOutputs(dev); + RRTellChanged(dev->pScreen); + } } else { @@ -1310,11 +1317,14 @@ dev->doMultimon = 0; dev->monitorCount = 0; #if defined(XORGXRDP_LRANDR) - rdpLRRSetRdpOutputs(dev); -#else - rdpRRSetRdpOutputs(dev); - RRTellChanged(dev->pScreen); + if (dev->nvidia) + rdpLRRSetRdpOutputs(dev); + else #endif + { + rdpRRSetRdpOutputs(dev); + RRTellChanged(dev->pScreen); + } } /* rdpLoadLayout */