(svn r8306) [WinCE] -Fix: some functions don't exists in WinCE, so give an alternative where possible
authortruelight
Sun, 21 Jan 2007 14:19:18 +0000
changeset 5755 09b36c6ee100
parent 5754 086187883012
child 5756 1caf4ff6fadc
(svn r8306) [WinCE] -Fix: some functions don't exists in WinCE, so give an alternative where possible
src/saveload.cpp
src/stdafx.h
--- a/src/saveload.cpp	Sun Jan 21 14:15:38 2007 +0000
+++ b/src/saveload.cpp	Sun Jan 21 14:19:18 2007 +0000
@@ -1595,7 +1595,13 @@
 			/* No loader found, treat as version 0 and use LZO format */
 			if (fmt == endof(_saveload_formats)) {
 				DEBUG(sl, 0, "Unknown savegame type, trying to load it as the buggy format");
+#if defined(WINCE)
+				/* Of course some system had not to support rewind ;) */
+				fseek(_sl.fh, 0L, SEEK_SET);
+				clearerr(_sl.fh);
+#else
 				rewind(_sl.fh);
+#endif
 				_sl_version = 0;
 				_sl_minor_version = 0;
 				fmt = _saveload_formats + 1; // LZO
--- a/src/stdafx.h	Sun Jan 21 14:15:38 2007 +0000
+++ b/src/stdafx.h	Sun Jan 21 14:19:18 2007 +0000
@@ -157,11 +157,19 @@
 # include <stddef.h>
 #endif /* defined(_MSC_VER) */
 
+#if defined(WINCE)
+# define strdup _strdup
+#endif /* WINCE */
+
 /* NOTE: the string returned by these functions is only valid until the next
  * call to the same function and is not thread- or reentrancy-safe */
 #if !defined(STRGEN)
 # if defined(WIN32) || defined(WIN64)
-#  define fopen(file, mode) _wfopen(OTTD2FS(file), L ## mode)
+#  if defined(WINCE)
+/* XXX - WinCE without MSVCRT doesn't support wfopen, so it seems */
+#  else
+#   define fopen(file, mode) _wfopen(OTTD2FS(file), L ## mode)
+#  endif
    const char *FS2OTTD(const wchar_t *name);
    const wchar_t *OTTD2FS(const char *name);
 # else