summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbjarni <bjarni@openttd.org>2006-03-18 16:37:25 +0000
committerbjarni <bjarni@openttd.org>2006-03-18 16:37:25 +0000
commit1c7d139171b546daca93d8149aff3f56e5e787ca (patch)
tree51222ed110b16d1008b241958e7b3471f4e4ce2c
parent31e1c4fe49013d9609244ba2728f4cda4b1b8c75 (diff)
downloadopenttd-1c7d139171b546daca93d8149aff3f56e5e787ca.tar.xz
(svn r3972) changed r3966 to only affect OSX. Too bad linuxes with utf-8 filesystems now got the saving problem again, but now we can compile on all platforms again
-rw-r--r--saveload.c4
-rw-r--r--screenshot.c4
-rw-r--r--unix.c25
3 files changed, 8 insertions, 25 deletions
diff --git a/saveload.c b/saveload.c
index 2371450f6..7f2e19191 100644
--- a/saveload.c
+++ b/saveload.c
@@ -1314,11 +1314,11 @@ extern bool AfterLoadGame(void);
extern void BeforeSaveGame(void);
extern bool LoadOldSaveGame(const char *file);
-#ifdef UNIX
+#ifdef __APPLE__
extern const char *convert_to_fs_charset(const char *filename);
#else
#define convert_to_fs_charset(str) (str)
-#endif // UNIX
+#endif
/** Small helper function to close the to be loaded savegame an signal error */
static inline SaveOrLoadResult AbortSaveLoad(void)
diff --git a/screenshot.c b/screenshot.c
index 597bf5d45..1c4783804 100644
--- a/screenshot.c
+++ b/screenshot.c
@@ -12,11 +12,11 @@
#include "screenshot.h"
#include "variables.h"
-#ifdef UNIX
+#ifdef __APPLE__
extern const char *convert_to_fs_charset(const char *filename);
#else
#define convert_to_fs_charset(str) (str)
-#endif // UNIX
+#endif
char _screenshot_format_name[8];
uint _num_screenshot_formats;
diff --git a/unix.c b/unix.c
index fd661acf4..479a3f977 100644
--- a/unix.c
+++ b/unix.c
@@ -43,14 +43,13 @@ ULONG __stack = (1024*1024)*2; // maybe not that much is needed actually ;)
#endif
#if defined(__APPLE__)
+ #include <iconv.h>
+ #include <locale.h>
#if defined(WITH_SDL)
//the mac implementation needs this file included in the same file as main()
#include <SDL.h>
#endif
#endif
-
-#include <iconv.h>
-#include <locale.h>
static char *_fios_path;
static char *_fios_save_path;
static char *_fios_scn_path;
@@ -607,22 +606,7 @@ void CSleep(int milliseconds)
#endif // __AMIGA__
}
-bool guessUTF8(void)
-{
-#if defined(__linux__)
- const char *lang = getenv("LANG");
- if(lang != NULL && strstr(lang, "UTF-8") != NULL)
- return true;
- else
- return false;
-#elif defined(__APPLE__)
- return true;
-#else
- return false;
-#endif
-
-}
-
+#ifdef __APPLE__
/* FYI: This is not thread-safe.
Assumptions:
- the 'from' charset is ISO-8859-15
@@ -640,8 +624,6 @@ const char *convert_to_fs_charset(const char *filename)
if(inbuf == NULL)
inbuf = statin;
- if(guessUTF8() == false)
- return filename;
setlocale(LC_ALL, "C-UTF-8");
strcpy(statout, filename);
strcpy(statin, filename);
@@ -659,3 +641,4 @@ const char *convert_to_fs_charset(const char *filename)
// FIX: invalid characters will abort conversion, but they shouldn't occur?
return statout;
}
+#endif