Advanced Rogue 7: add and use more md_ functions.

md_fileno() and md_fdopen() are now included.  I still hope to rewrite
everything to use FILE *'s.
This commit is contained in:
John "Elwin" Edwards 2015-08-13 07:38:57 -04:00
parent 916a683bf6
commit 6813e9c5bf
4 changed files with 25 additions and 3 deletions

View file

@ -175,6 +175,26 @@ md_unlink(char *file)
#endif
}
FILE *
md_fdopen(int fd, char *mode)
{
#ifdef _WIN32
return( _fdopen(fd, mode) );
#else
return( fdopen(fd, mode) );
#endif
}
int
md_fileno(FILE *fp)
{
#ifdef _WIN32
return( _fileno(fp) );
#else
return( fileno(fp) );
#endif
}
int
md_creat(char *file, int mode)
{

View file

@ -1303,3 +1303,5 @@ extern struct delayed_action f_list[MAXFUSES];
extern int demoncnt, fusecnt, between, chance;
#define CCHAR(x) ( (char) (x & A_CHARTEXT) )
extern char *md_gethostname(), *md_getusername(), *md_gethomedir(), *md_getroguedir(), *md_crypt();
extern FILE * md_fdopen(int fd, char *mode);
extern int md_fileno(FILE *fp);

View file

@ -111,7 +111,7 @@ gotfile:
*/
if (save_file(savefd) == FALSE) {
msg("Cannot create save file.");
unlink(file_name);
md_unlink(file_name);
return(FALSE);
}
else return(TRUE);
@ -160,7 +160,7 @@ register int savefd;
num_written = ENCWRITE(version, num_to_write, savefd);
sprintf(prbuf,"%d x %d\n", LINES, COLS);
ENCWRITE(prbuf,80,savefd);
savef = (FILE *) fdopen(savefd,"wb");
savef = (FILE *) md_fdopen(savefd,"wb");
ret = rs_save_file(savef);
fclose(savef);
if (num_to_write == num_written && ret == 0) return(TRUE);

View file

@ -79,7 +79,7 @@ rs_write(FILE *savef, void *ptr, size_t size)
if (write_error)
return(WRITESTAT);
if (encwrite(ptr, size, fileno(savef)) != size)
if (encwrite(ptr, size, md_fileno(savef)) != size)
write_error = 1;
return(WRITESTAT);