diff options
Diffstat (limited to 'xrdp/xrdp_mm.c')
-rw-r--r-- | xrdp/xrdp_mm.c | 15 |
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); |