diff --git a/console.c b/console.c index 703e6837..c9284b19 100644 --- a/console.c +++ b/console.c @@ -26,12 +26,10 @@ void cleanup_exit(int code) sk_cleanup(); WSACleanup(); - if (cfg.protocol == PROT_SSH) { - random_save_seed(); + random_save_seed(); #ifdef MSCRYPTOAPI - crypto_wrapup(); + crypto_wrapup(); #endif - } exit(code); } @@ -212,9 +210,6 @@ int askappend(void *frontend, char *filename) char line[32]; - if (cfg.logxfovr != LGXF_ASK) { - return ((cfg.logxfovr == LGXF_OVR) ? 2 : 1); - } if (console_batch_mode) { fprintf(stderr, msgtemplate_batch, FILENAME_MAX, filename); fflush(stderr); diff --git a/logging.c b/logging.c index 9e8b9f83..c2c4ff15 100644 --- a/logging.c +++ b/logging.c @@ -118,7 +118,10 @@ void logfopen(void *handle) if (ctx->lgfp) { int i; fclose(ctx->lgfp); - i = askappend(ctx->frontend, ctx->currlogfilename); + if (cfg.logxfovr != LGXF_ASK) { + i = ((cfg.logxfovr == LGXF_OVR) ? 2 : 1); + } else + i = askappend(ctx->frontend, ctx->currlogfilename); if (i == 1) writemod[0] = 'a'; /* set append mode */ else if (i == 0) { /* cancelled */ diff --git a/unix/uxcons.c b/unix/uxcons.c index 779ebf43..579178c7 100644 --- a/unix/uxcons.c +++ b/unix/uxcons.c @@ -204,9 +204,6 @@ int askappend(void *frontend, char *filename) char line[32]; - if (cfg.logxfovr != LGXF_ASK) { - return ((cfg.logxfovr == LGXF_OVR) ? 2 : 1); - } if (console_batch_mode) { fprintf(stderr, msgtemplate_batch, FILENAME_MAX, filename); fflush(stderr); diff --git a/windlg.c b/windlg.c index a8603e65..cb19e76d 100644 --- a/windlg.c +++ b/windlg.c @@ -3951,9 +3951,7 @@ int askappend(void *frontend, char *filename) "or Cancel to disable logging."; char message[sizeof(msgtemplate) + FILENAME_MAX]; int mbret; - if (cfg.logxfovr != LGXF_ASK) { - return ((cfg.logxfovr == LGXF_OVR) ? 2 : 1); - } + sprintf(message, msgtemplate, FILENAME_MAX, filename); mbret = MessageBox(NULL, message, mbtitle,