static int session_closed;
+Config cfg; /* exported to windlg.c */
+
extern struct sesslist sesslist; /* imported from windlg.c */
#define FONT_NORMAL 0
hwnd = NULL;
term = term_init(&cfg, NULL);
- logctx = log_init(NULL);
+ logctx = log_init(NULL, &cfg);
term_provide_logctx(term, logctx);
cfgtopalette();
char msg[1024], *title;
char *realhost;
- error = back->init((void *)term, &backhandle,
+ error = back->init((void *)term, &backhandle, &cfg,
cfg.host, cfg.port, &realhost, cfg.tcp_nodelay);
back->provide_logctx(backhandle, logctx);
if (error) {
}
fontflag[0] = fontflag[1] = fontflag[2] = 1;
- init_ucs();
+ init_ucs(&cfg);
}
static void another_font(int fontno)
}
}
- if (strcmp(prev_cfg.logfilename, cfg.logfilename) ||
- prev_cfg.logtype != cfg.logtype) {
- logfclose(logctx); /* reset logging */
- logfopen(logctx);
- }
+ /* Pass new config data to the logging module */
+ log_reconfig(logctx, &cfg);
sfree(logpal);
/*
/* Pass new config data to the terminal */
term_reconfig(term, &cfg);
+ /* Pass new config data to the back end */
+ back->reconfig(back, &cfg);
+
/* Screen size changed ? */
if (cfg.height != prev_cfg.height ||
cfg.width != prev_cfg.width ||