Skip to content
Snippets Groups Projects
Commit ba8fdb5a authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

Add 21 extra blank lines to the end of the 31-line DOOR.SYS file

Some doors/door kits actually require all 52 lines, but since they
(may) have problems with the values we populate on those additional
21 lines, just write them as blank when a program is configured for
the GAP (original) 31 line DOOR.SYS drop file. I doubt (and hope)
that no programs will care if their are more lines than they expect.
parent 1f506c96
No related branches found
No related tags found
No related merge requests found
Pipeline #6842 passed
......@@ -1510,12 +1510,16 @@ void xtrn_cfg(int section)
" Solar Realms DOORFILE.SR\n"
" Synchronet XTRN.DAT MODUSER.DAT\n"
"\n"
"`DOOR.SYS`\n"
"The drop file format compatible with the largest number of online\n"
"programs (e.g. door games) written for MS-DOS based BBSes is the\n"
"`DOOR.SYS` file format. Synchronet supports both the original (GAP)\n"
"31-line DOOR.SYS file format and the extended 52-line format.\n"
"If you encounter door compatibility issues with the original 32-line\n"
"format, try using the 52-line format (or vice versa).\n"
"31-line DOOR.SYS file format and the extended (later) 52-line format.\n"
"The 31-line DOOR.SYS file created by Synchronet includes 21 extra blank\n"
"lines to accommodate software that expects more than 31 lines, but has\n"
"an issue with the contents of the additional lines as populated by SBBS.\n"
"If you encounter door compatibility issues with the original 31-line\n"
"format, try using the 52-line format instead (or vice versa).\n"
;
k=uifc.list(WIN_MID|WIN_ACT,0,0,0,&k,0
,"BBS Drop File Type",opt);
......
......@@ -480,6 +480,12 @@ void sbbs_t::xtrndat(const char *name, const char *dropdir, uchar type, uint tle
,MIN(useron.posts, INT16_MAX)); /* 52: User message left */
lfexpand(str,misc);
fwrite(str,strlen(str),1,fp);
} else { // 31-line variant, followed by 21 blank lines
for(i = 0; i < 21; ++i) {
if(!(misc & XTRN_NATIVE))
fputc('\r', fp);
fputc('\n', fp);
}
}
fclose(fp);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment