# HG changeset patch # User John "Elwin" Edwards # Date 1439465937 14400 # Node ID aa8e1fc62926baf1aaf0f05d8c236b271a29cae6 # Parent e69128d2e4c5dd685967cee5672d56a2e33cb56a 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. diff -r e69128d2e4c5 -r aa8e1fc62926 arogue7/mdport.c --- a/arogue7/mdport.c Wed Aug 12 17:03:15 2015 -0400 +++ b/arogue7/mdport.c Thu Aug 13 07:38:57 2015 -0400 @@ -175,6 +175,26 @@ #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) { diff -r e69128d2e4c5 -r aa8e1fc62926 arogue7/rogue.h --- a/arogue7/rogue.h Wed Aug 12 17:03:15 2015 -0400 +++ b/arogue7/rogue.h Thu Aug 13 07:38:57 2015 -0400 @@ -1303,3 +1303,5 @@ 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); diff -r e69128d2e4c5 -r aa8e1fc62926 arogue7/save.c --- a/arogue7/save.c Wed Aug 12 17:03:15 2015 -0400 +++ b/arogue7/save.c Thu Aug 13 07:38:57 2015 -0400 @@ -111,7 +111,7 @@ */ 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 @@ 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); diff -r e69128d2e4c5 -r aa8e1fc62926 arogue7/state.c --- a/arogue7/state.c Wed Aug 12 17:03:15 2015 -0400 +++ b/arogue7/state.c Thu Aug 13 07:38:57 2015 -0400 @@ -79,7 +79,7 @@ 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);