Mercurial > hg > openttd
changeset 14578:af0dd884a764 draft
(svn r19151) -Codechange [FS#3625]: Move home directory to a better place in Haiku (jrepan)
author | rubidium <rubidium@openttd.org> |
---|---|
date | Wed, 17 Feb 2010 16:45:55 +0000 |
parents | cabb333259ec |
children | fdc86397284d |
files | config.lib src/ai/api/ai_changelog.hpp src/fileio.cpp |
diffstat | 3 files changed, 11 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/config.lib +++ b/config.lib @@ -1018,7 +1018,7 @@ fi if [ "$personal_dir" = "1" ]; then - if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ] || [ "$os" = "DOS" ]; then + if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ] || [ "$os" = "DOS" ] || [ "$os" == "HAIKU" ]; then personal_dir="OpenTTD" elif [ "$os" = "OSX" ]; then personal_dir="Documents/OpenTTD"
--- a/src/ai/api/ai_changelog.hpp +++ b/src/ai/api/ai_changelog.hpp @@ -16,7 +16,7 @@ * * \b 1.1.0 * - * 1.0.0 is not yet released. The following changes are not set in stone yet. + * 1.1.0 is not yet released. The following changes are not set in stone yet. * * \b 1.0.0 *
--- a/src/fileio.cpp +++ b/src/fileio.cpp @@ -18,6 +18,9 @@ #include "tar_type.h" #ifdef WIN32 #include <windows.h> +#elif defined(__HAIKU__) +#include <Path.h> +#include <storage/FindDirectory.h> #else #ifdef OPENBSD #include <unistd.h> @@ -849,12 +852,18 @@ #if defined(__MORPHOS__) || defined(__AMIGA__) || defined(DOS) || defined(OS2) || !defined(WITH_PERSONAL_DIR) _searchpaths[SP_PERSONAL_DIR] = NULL; #else +#ifdef __HAIKU__ + BPath path; + find_directory(B_USER_SETTINGS_DIRECTORY, &path); + const char *homedir = path.Path(); +#else const char *homedir = getenv("HOME"); if (homedir == NULL) { const struct passwd *pw = getpwuid(getuid()); homedir = (pw == NULL) ? "" : pw->pw_dir; } +#endif snprintf(tmp, MAX_PATH, "%s" PATHSEP "%s", homedir, PERSONAL_DIR); AppendPathSeparator(tmp, MAX_PATH);