diff -r 7f972c46af7a -r 48610042ac18 src/fileio.cpp --- a/src/fileio.cpp Sun Nov 18 16:41:25 2007 +0000 +++ b/src/fileio.cpp Sun Nov 18 18:28:32 2007 +0000 @@ -363,6 +363,16 @@ CreateDirectory(OTTD2FS(name), NULL); #elif defined(OS2) && !defined(__INNOTEK_LIBC__) mkdir(OTTD2FS(name)); +#elif defined(__MORPHOS__) || defined(__AMIGAOS__) + char buf[MAX_PATH]; + ttd_strlcpy(buf, name, MAX_PATH); + + size_t len = strlen(name) - 1; + if (buf[len] == '/') { + buf[len] = '\0'; // Kill pathsep, so mkdir() will not fail + } + + mkdir(OTTD2FS(buf), 0755); #else mkdir(OTTD2FS(name), 0755); #endif @@ -720,7 +730,10 @@ char *autosave_dir = str_fmt("%s%s", _personal_dir, FioGetSubdirectory(AUTOSAVE_DIR)); /* Make the necessary folders */ +#if !defined(__MORPHOS__) && !defined(__AMIGA__) && defined(WITH_PERSONAL_DIR) FioCreateDirectory(_personal_dir); +#endif + FioCreateDirectory(save_dir); FioCreateDirectory(autosave_dir);