Skip to content
Snippets Groups Projects
Commit 5e7953c1 authored by deuce's avatar deuce
Browse files

Copy count of lines in scrollback out before ending CTerm.

parent de11bf03
Branches
Tags
No related merge requests found
......@@ -547,6 +547,8 @@ void change_settings(void)
uifc.msg("Cannot allocate space for scrollback.");
}
else {
if(scrollback_lines > j)
scrollback_lines=j;
scrollback_buf=tmpscroll;
settings.backlines=j;
iniSetInteger(&inicontents,"SyncTERM","ScrollBackLines",settings.backlines,&ini_style);
......
......@@ -38,6 +38,7 @@ int default_font=0;
struct syncterm_settings settings;
char *font_names[sizeof(conio_fontdata)/sizeof(struct conio_font_data_struct)];
unsigned char *scrollback_buf=NULL;
unsigned int scrollback_lines=0;
#ifdef _WINSOCKAPI_
......
......@@ -18,6 +18,7 @@ struct syncterm_settings {
extern char *inpath;
extern char *syncterm_version;
extern unsigned char *scrollback_buf;
extern unsigned int scrollback_lines;
extern struct syncterm_settings settings;
void parse_url(char *url, struct bbslist *bbs, int dflt_conn_type, int force_defaults);
extern int default_font;
......
......@@ -886,7 +886,8 @@ BOOL doterm(struct bbslist *bbs)
case -1:
if(!is_connected(NULL)) {
uifcmsg("Disconnected","`Disconnected`\n\nRemote host dropped connection");
cterm.write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
cterm_write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
scrollback_lines=cterm.backpos;
cterm_end();
conn_close();
hidemouse();
......@@ -1096,7 +1097,8 @@ BOOL doterm(struct bbslist *bbs)
if(uifc.list(WIN_MID|WIN_SAV,0,0,0,&i,NULL,"Disconnect... Are you sure?",opts)==0) {
uifcbail();
free(buf);
cterm.write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
cterm_write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
scrollback_lines=cterm.backpos;
cterm_end();
conn_close();
hidemouse();
......@@ -1129,7 +1131,8 @@ BOOL doterm(struct bbslist *bbs)
if(!confirm("Disconnect?",NULL))
continue;
#endif
cterm.write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
cterm_write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
scrollback_lines=cterm.backpos;
cterm_end();
conn_close();
hidemouse();
......@@ -1174,7 +1177,8 @@ BOOL doterm(struct bbslist *bbs)
if(!confirm("Disconnect?",NULL))
continue;
#endif
cterm.write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
cterm_write("\x0c",1,NULL,0,NULL); /* Clear screen into scrollback */
scrollback_lines=cterm.backpos;
cterm_end();
conn_close();
hidemouse();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment