libxrdp: move xrdp_rdp_send_monitorlayout call after demand active pdu

ulab-next
speidy 11 years ago
parent e5f2f997db
commit 6f7958bdcb

@ -107,6 +107,17 @@ libxrdp_process_data(struct xrdp_session *session)
{
case -1:
xrdp_rdp_send_demand_active((struct xrdp_rdp *)session->rdp);
// send Monitor Layout PDU for multimon
if (session->client_info->monitorCount > 0 && session->client_info->multimon == 1)
{
DEBUG(("sending monitor layout pdu"));
if (xrdp_rdp_send_monitorlayout((struct xrdp_rdp *)session->rdp) != 0)
{
g_writeln("xrdp_rdp_send_monitorlayout: error");
}
}
session->up_and_running = 0;
break;
case 0:

@ -353,6 +353,8 @@ xrdp_rdp_incoming(struct xrdp_rdp* self);
int APP_CC
xrdp_rdp_send_demand_active(struct xrdp_rdp* self);
int APP_CC
xrdp_rdp_send_monitorlayout(struct xrdp_rdp* self);
int APP_CC
xrdp_rdp_process_confirm_active(struct xrdp_rdp* self, struct stream* s);
int APP_CC
xrdp_rdp_process_data(struct xrdp_rdp* self, struct stream* s);

@ -1572,7 +1572,7 @@ xrdp_rdp_send_fontmap(struct xrdp_rdp *self)
return 0;
}
/*****************************************************************************/
static int APP_CC
int APP_CC
xrdp_rdp_send_monitorlayout(struct xrdp_rdp *self)
{
struct stream *s;
@ -1629,18 +1629,6 @@ xrdp_rdp_process_data_font(struct xrdp_rdp *self, struct stream *s)
DEBUG(("sending fontmap"));
xrdp_rdp_send_fontmap(self);
/* TODO: Monitor Layout PDU should send to client after demand active pdu
* MOVE THAT CALL
*/
if (self->client_info.monitorCount > 0 && self->client_info.multimon == 1)
{
DEBUG(("sending monitor layout pdu"));
if (xrdp_rdp_send_monitorlayout(self) != 0)
{
g_writeln("Problem with monitor layout packet!!!");
}
}
self->session->up_and_running = 1;
DEBUG(("up_and_running set"));
xrdp_rdp_send_data_update_sync(self);

Loading…
Cancel
Save