Send back an ExtendedDesktopSize to a SetDesktopSize request even when resize is not allowed
This commit is contained in:
@@ -997,8 +997,8 @@ void VNCSConnectionST::setDesktopSize(int fb_width, int fb_height,
|
|||||||
{
|
{
|
||||||
unsigned int result;
|
unsigned int result;
|
||||||
|
|
||||||
if (!(accessRights & AccessSetDesktopSize)) return;
|
if (!(accessRights & AccessSetDesktopSize)) goto justnotify;
|
||||||
if (!rfb::Server::acceptSetDesktopSize) return;
|
if (!rfb::Server::acceptSetDesktopSize) goto justnotify;
|
||||||
|
|
||||||
// Don't bother the desktop with an invalid configuration
|
// Don't bother the desktop with an invalid configuration
|
||||||
if (!layout.validate(fb_width, fb_height)) {
|
if (!layout.validate(fb_width, fb_height)) {
|
||||||
@@ -1021,6 +1021,14 @@ void VNCSConnectionST::setDesktopSize(int fb_width, int fb_height,
|
|||||||
throw Exception("Desktop configured a different screen layout than requested");
|
throw Exception("Desktop configured a different screen layout than requested");
|
||||||
server->notifyScreenLayoutChange(this);
|
server->notifyScreenLayoutChange(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
|
|
||||||
|
justnotify:
|
||||||
|
writer()->writeExtendedDesktopSize(reasonClient, resultProhibited,
|
||||||
|
server->pb->getRect().width(),
|
||||||
|
server->pb->getRect().height(),
|
||||||
|
server->screenLayout);
|
||||||
}
|
}
|
||||||
|
|
||||||
void VNCSConnectionST::fence(rdr::U32 flags, unsigned len, const char data[])
|
void VNCSConnectionST::fence(rdr::U32 flags, unsigned len, const char data[])
|
||||||
|
|||||||
Reference in New Issue
Block a user