You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/games-rpg/xu4/files/0.9-savegame.patch

77 lines
1.7 KiB

--- a/src/savegame.c.
+++ b/src/savegame.c
@@ -21,23 +21,24 @@
char *partySavFilename() {
char *fname;
-#if defined(MACOSX)
char *home;
home = getenv("HOME");
if (home && home[0]) {
fname = (char *) malloc(strlen(home) +
+#if defined(MACOSX)
strlen(MACOSX_USER_FILES_PATH) +
+#endif
+strlen("/.u4/") +
strlen(PARTY_SAV_BASE_FILENAME) + 2);
strcpy(fname, home);
+#if defined(MACOSX)
strcat(fname, MACOSX_USER_FILES_PATH);
- strcat(fname, "/");
+#endif
+ strcat(fname, "/.u4/");
strcat(fname, PARTY_SAV_BASE_FILENAME);
} else
fname = strdup(PARTY_SAV_BASE_FILENAME);
-#else
- fname = strdup(PARTY_SAV_BASE_FILENAME);
-#endif
return fname;
}
@@ -45,24 +45,24 @@
char *monstersSavFilename() {
char *fname;
-#if defined(MACOSX)
char *home;
home = getenv("HOME");
if (home && home[0]) {
fname = (char *) malloc(strlen(home) +
+#if defined(MACOSX)
strlen(MACOSX_USER_FILES_PATH) +
+#endif
+strlen("/.u4/") +
strlen(MONSTERS_SAV_BASE_FILENAME) + 2);
strcpy(fname, home);
+#if defined(MACOSX)
strcat(fname, MACOSX_USER_FILES_PATH);
- strcat(fname, "/");
+#endif
+ strcat(fname, "/.u4/");
strcat(fname, MONSTERS_SAV_BASE_FILENAME);
} else
fname = strdup(MONSTERS_SAV_BASE_FILENAME);
-#else
- fname = strdup(MONSTERS_SAV_BASE_FILENAME);
-#endif
-
return fname;
}
--- a/src/u4.c
+++ b/src/u4.c
@@ -38,6 +38,10 @@
osxInit(argv[0]);
#endif
+ if (getenv("HOME")) {
+ chdir(getenv("HOME"));
+ mkdir(".u4", 0777);
+ }
settingsRead();
for (i = 1; i < (unsigned int)argc; i++) {