Merge branch 'NetHack-3.6'

This commit is contained in:
nhmall
2019-10-30 13:21:20 -04:00
70 changed files with 1001 additions and 167 deletions

View File

@@ -1371,6 +1371,10 @@ get_saved_games()
{
char *foundfile;
const char *fq_save;
const char *fq_new_save;
const char *fq_old_save;
char **files = 0;
int i;
Strcpy(g.plname, "*");
set_savefile_name(FALSE);
@@ -1386,20 +1390,44 @@ get_saved_games()
++n;
} while (findnext());
}
if (n > 0) {
result = (char **) alloc((n + 1) * sizeof(char *)); /* at most */
(void) memset((genericptr_t) result, 0, (n + 1) * sizeof(char *));
files = (char **) alloc((n + 1) * sizeof(char *)); /* at most */
(void) memset((genericptr_t) files, 0, (n + 1) * sizeof(char *));
if (findfirst((char *) fq_save)) {
j = n = 0;
i = 0;
do {
char *r;
r = plname_from_file(foundfile);
if (r)
result[j++] = r;
++n;
files[i++] = strdup(foundfile);
} while (findnext());
}
}
if (n > 0) {
result = (char **) alloc((n + 1) * sizeof(char *)); /* at most */
(void) memset((genericptr_t) result, 0, (n + 1) * sizeof(char *));
for(i = 0; i < n; i++) {
char *r;
r = plname_from_file(files[i]);
if (r) {
/* rename file if it is not named as expected */
Strcpy(g.plname, r);
set_savefile_name(FALSE);
fq_new_save = fqname(g.SAVEF, SAVEPREFIX, 0);
fq_old_save = fqname(files[i], SAVEPREFIX, 1);
if(strcmp(fq_old_save, fq_new_save) != 0 &&
!file_exists(fq_new_save))
rename(fq_old_save, fq_new_save);
result[j++] = r;
}
}
}
free_saved_games(files);
}
#endif
#if defined(UNIX) && defined(QT_GRAPHICS)
@@ -3400,6 +3428,7 @@ fopen_sym_file()
FILE *fp;
fp = fopen_datafile(SYMBOLS, "r", HACKPREFIX);
return fp;
}