summaryrefslogtreecommitdiffstats
path: root/xrdp/xrdp_mm.c
diff options
context:
space:
mode:
Diffstat (limited to 'xrdp/xrdp_mm.c')
-rw-r--r--xrdp/xrdp_mm.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/xrdp/xrdp_mm.c b/xrdp/xrdp_mm.c
index 65c2f3d6..1054ba2e 100644
--- a/xrdp/xrdp_mm.c
+++ b/xrdp/xrdp_mm.c
@@ -105,7 +105,7 @@ xrdp_mm_sync_load(long param1, long param2)
static void APP_CC
xrdp_mm_module_cleanup(struct xrdp_mm *self)
{
- log_message(LOG_LEVEL_DEBUG,"xrdp_mm_module_cleanup");
+ log_message(LOG_LEVEL_DEBUG, "xrdp_mm_module_cleanup");
/* shutdown thread */
deinit_xrdp_encoder(self);
@@ -132,6 +132,14 @@ xrdp_mm_module_cleanup(struct xrdp_mm *self)
self->mod_exit = 0;
self->mod = 0;
self->mod_handle = 0;
+
+ if (self->wm->hide_log_window)
+ {
+ /* make sure autologin is off */
+ self->wm->session->client_info->rdp_autologin = 0;
+ xrdp_wm_set_login_mode(self->wm, 0); /* reset session */
+ }
+
}
/*****************************************************************************/
@@ -566,6 +574,10 @@ xrdp_mm_setup_mod2(struct xrdp_mm *self)
{
rv = 0; /* connect success */
}
+ else
+ {
+ xrdp_wm_show_log(self->wm);
+ }
}
if (rv == 0)
@@ -1216,6 +1228,7 @@ xrdp_mm_process_login_response(struct xrdp_mm *self, struct stream *s)
"login failed");
log_message(LOG_LEVEL_INFO,"xrdp_mm_process_login_response: "
"login failed");
+ xrdp_wm_show_log(self->wm);
}
cleanup_sesman_connection(self);