Commit Graph

248 Commits

Author SHA1 Message Date
smatz 2b8f7f2078 (svn r19000) -Cleanup: remove redundant check 2010-02-04 00:40:11 +00:00
rubidium 15adbad2f4 (svn r18834) -Fix [FS#3538]: compilation failed on OpenBSD (matze) 2010-01-16 22:01:33 +00:00
rubidium 91747d72dc (svn r18611) -Fix (r18608): uppercase-to-lowercase conversion when opening a file wasn't applied when finding the full path of a file 2009-12-23 09:08:52 +00:00
smatz a84921f8f5 (svn r18032) -Codechange: add one const 2009-11-09 16:33:52 +00:00
glx 85a910f02e (svn r18029) -Fix (r18028): AppendPathSeparator() should stay global 2009-11-09 15:16:38 +00:00
rubidium 860b9b1cea (svn r18028) -Codechange: unglobalise some functions 2009-11-09 10:40:33 +00:00
rubidium 3702746756 (svn r18026) -Codechange: make a lookup table static that doesn't need to be 'exported' 2009-11-09 09:27:48 +00:00
rubidium f76ef2f6ce (svn r17686) -Fix [FS#3247]: make the -c <config file> location relative to the current directory instead of the directory of the binary 2009-10-03 14:51:30 +00:00
rubidium e9624fe0cc (svn r17682) -Codechange: remove erroneous space before some commas 2009-10-02 15:13:15 +00:00
rubidium e8ddf001c8 (svn r17570) -Fix: a number of Doxygen warnings about missing parameters, which were sometimes missing and sometimes just typos 2009-09-19 09:51:14 +00:00
rubidium 7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +00:00
rubidium 98b4f1fce2 (svn r16590) -Fix [FS#2967]: don't crash when tars/newgrfs are removed, just tell the file could be opened/found. 2009-06-18 09:47:06 +00:00
rubidium 168ae6f7e2 (svn r16422) -Codechange: use const_cast for removing const and warn when const is (accidentally?) removed using C-style casts. 2009-05-24 21:09:00 +00:00
rubidium 0d99b6c71c (svn r16421) -Codechange: do not unnecessarily remove constness or unnecessarily add it. 2009-05-24 20:29:04 +00:00
smatz f5316c5cbd (svn r16269) -Codechange: use gcc's ability to check parameters sent to printf-like functions
-Fix: wrong number of parameters or wrong parameter types sent to printf-like functions at several places
2009-05-10 17:27:25 +00:00
rubidium bee930f9b3 (svn r16024) -Codechange: harden string copying on places where it's possible 2009-04-10 20:37:05 +00:00
orudge bcc870e3f8 (svn r15745) -Fix: Resolve compile error in fileio.cpp on OS/2 - base paths on OS/2 behave much like DOS 2009-03-16 20:03:37 +00:00
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 2009-03-15 00:32:18 +00:00
rubidium f5c1365471 (svn r15641) -Fix: some gcc compilers seem to be chosing the C++ standard for strrchr, others the C standard... 2009-03-07 23:02:28 +00:00
rubidium 15e9fdd47a (svn r15615) -Feature: show scenarios/heightmaps from both your home directory and installation directory.
-Change [FS#2692]: make it more likely that scenarios are saved to the directory where openttd.cfg is and not the installation directory (gives problems with e.g. Vista). The working directory still overrides the openttd.cfg directory though, but only if it has a scenario directory.
2009-03-04 23:12:15 +00:00
rubidium a52d50c62f (svn r15612) -Codechange: unduplicate directory creation 2009-03-04 14:25:53 +00:00
rubidium 0d8da02ec1 (svn r15610) -Change: allow loading of heightmaps and savegames (any form) that are in .tar files 2009-03-04 09:53:31 +00:00
rubidium 4f3da358ee (svn r15607) -Codechange: support searching files without filtering on extension. 2009-03-04 00:19:42 +00:00
rubidium d1d0778a54 (svn r15606) -Codechange: make it possible to not recursively search with the file scanner (i.e. only search a single directory). 2009-03-04 00:17:51 +00:00
smatz d73c1fa7bf (svn r15568) -Cleanup: *allocT/AllocaM doesn't return NULL when allocating fails 2009-02-24 20:59:17 +00:00
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
rubidium 3a13b75e37 (svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates. 2009-01-17 16:53:32 +00:00
rubidium 102cc11ee9 (svn r15113) -Codechange: unify calling ScanForTarFiles when determining the paths. 2009-01-16 16:32:48 +00:00
rubidium c333790dd8 (svn r15112) -Fix (r15108): transform should include algorithm as that's where it's from. Furthermore not including it gives compile errors for some 2009-01-16 16:29:07 +00:00
rubidium 2adcaa576f (svn r15111) -Fix: when scanning a path and saying it should ignore tars, it didn't do so 2009-01-16 16:14:01 +00:00
truebrain a43cd3456b (svn r15108) -Fix: TarAddLink didn't lowercase strings, breaking tar-loading when using uppercase files 2009-01-16 14:56:33 +00:00
truebrain ef62688522 (svn r15095) -Add [NoAI]: allow AI Libraries to be in .tar files (subdir required, as with AIs
-Add [NoAI]: allow multiple versions of the same AI co-exist
-Change [NoAI]: updated the whole method of AI (Library) finding and loading; it is now much more clear and transparent
-Change [NoAI]: the name of the AI is now the name used by CreateInstance()
-Change [NoAI]: make the AI finder a bit more clever, mostly related to version finding
2009-01-15 18:15:12 +00:00
rubidium ea5457d831 (svn r15082) -Codechange: make the AI library path also a searchdir instead of manually manufacturing it into a searchdir. 2009-01-14 15:20:06 +00:00
truebrain a3dd7506d3 (svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
NoAI is an API (a framework) to build your own AIs in. See:
   http://wiki.openttd.org/wiki/index.php/AI:Main_Page
 With many thanks to:
  - glx and Rubidium for their syncing, feedback and hard work
  - Yexo for his feedback, patches, and AIs which tested the system very deep
  - Morloth for his feedback and patches
  - TJIP for hosting a challenge which kept NoAI on track
  - All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
2009-01-12 17:11:45 +00:00
rubidium bcb9a11754 (svn r14656) -Change: replace instances of x & S_IFREG with S_ISREG(x) as S_IFREG can be 0 on some platforms. 2008-12-05 18:02:04 +00:00
rubidium a614dd7174 (svn r14636) -Add: DOS port of OpenTTD, without network support though. 2008-11-26 13:12:45 +00:00
rubidium bb25748a9d (svn r14635) -Change: use S_ISDIR/S_ISREG as x & S_IFREG always results false on platforms when S_IFREG is 0x0000. 2008-11-26 01:07:49 +00:00
skidd13 706dd0f86c (svn r14555) -Codechange: replace ttd_strlcat and ttd_strlcpy with strecat and strecpy where direct conversion is possible 2008-11-02 11:20:15 +00:00
rubidium a999bb3227 (svn r14466) -Doc: remove some obsolete parameters, fix a few parameter names in comments and add a little more doxygen documentation. 2008-10-14 19:27:08 +00:00
rubidium e7829c1a57 (svn r14414) -Fix: replace instances of strncpy with strecpy as strncpy doesn't guarantee the resulting string is '\0'-terminated. 2008-09-29 16:27:02 +00:00
rubidium ea1f180a55 (svn r14199) -Codechange: split fileio.h into fileio_type.h and fileio_func.h so not everything that includes saveload.h needs to include everything else too. 2008-08-31 10:50:05 +00:00
rubidium 1afa473d0f (svn r14196) -Codechange: make the searching for files with a specific extension extendable. 2008-08-31 08:38:30 +00:00
rubidium d986380169 (svn r14069) -Fix: silence MSVC 64-bits compile warnings. 2008-08-13 14:52:54 +00:00
rubidium 81c50c6c32 (svn r13810) -Fix: small memory leak when tar files would be found. 2008-07-23 21:42:55 +00:00
frosch 1c17405721 (svn r13698) -Fix (r13697): MorphOS compilation. 2008-07-13 19:44:05 +00:00
frosch 1655a6f2a8 (svn r13697) -Feature: Add some support for symbolic links in .tar files. 2008-07-13 16:09:00 +00:00
frosch 2b6dee7f64 (svn r13693) -Fix (r11106, r11117): Do not rely on .tar files always ending with a block of zeros. 2008-07-12 14:49:43 +00:00
smatz fee2adb299 (svn r13618) -Codechange: move tar-specific declarations to separate file
Removes indirect dependency on <string> and <map> for over 40 files
2008-06-24 09:05:24 +00:00
glx ee256e770a (svn r13390) -Codechange: introduce usererror() for fatal but not openttd related errors. Now all error() will 'crash' openttd after showing the message in win32 releases (MSVC), creating a crash.log and crash.dmp (like the '!' hack used before). On the other hand, usererror() will just close the game. So use error() only when it can be helpful to debugging, else use usererror(). 2008-06-05 20:54:52 +00:00
smatz 8aa797603c (svn r13303) -Fix (r13301): 64bit gcc compilation was broken 2008-05-27 23:10:42 +00:00
rubidium 5c5ee7eb57 (svn r13301) -Fix [FS#1997]: resolve more MSVC 9 x64 warnings. 2008-05-27 21:41:00 +00:00
glx e48a351f8e (svn r13008) -Fix [FS#1997]: silence some MSVC x64 warnings 2008-05-08 13:20:54 +00:00
rubidium 50516f2372 (svn r12963) -Fix (r12960): loading some NewGRFs could cause an infinite loop. 2008-05-05 22:35:33 +00:00
rubidium 56e1178dca (svn r12960) -Codechange: handle return values of (some) file system related functions. 2008-05-05 21:54:05 +00:00
rubidium 0b8b5d1f3b (svn r12943) -Fix: reading/modifying invalid data under some circumstances. 2008-05-04 21:47:36 +00:00
peter1138 ffec79bbcf (svn r11940) -Codechange: Store short filename once per open file instead of once per sprite cache entry. Not all file types need this, but most of the time no sprite cache entry needed it either. 2008-01-22 07:27:06 +00:00
bjarni e281180d06 (svn r11837) -Feature: [OSX] added "/Library/Application Support/OpenTTD" to the search paths (based on patch by pv2b)
It is possible to set this to something else setting shared-dir with config
  This works on other OSes as well but it's off by default (and not really tested)
2008-01-13 17:45:29 +00:00
rubidium a3ccdcea36 (svn r11777) -Codechange: split the string header and make do not include it when it's not necessary. 2008-01-07 14:23:25 +00:00
rubidium 429521a7d1 (svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h' 2007-12-25 11:26:07 +00:00
rubidium bf98e25e43 (svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed. 2007-12-25 09:48:53 +00:00
rubidium 01e20c9140 (svn r11674) -Codechange: refactor some functions out of macros.h into more logical locations. 2007-12-21 19:21:21 +00:00
rubidium 5f576e12aa (svn r11569) -Fix [FS#1480]: full paths sometimes did not work correctly. 2007-12-04 18:42:08 +00:00
skidd13 58bb5c7525 (svn r11480) -Codechange: Rename the function ALIGN fitting to the naming style
This fixes also FS#1450
2007-11-19 20:40:14 +00:00
rubidium 92e0bf68e3 (svn r11464) -Fix: some issue that made OpenTTD on MorphOS seriously unplayable. 2007-11-18 18:28:32 +00:00
rubidium b14c94867a (svn r11355) -Fix [FS#1377]: loading too many GRFs was not handled gracefully causing crashes and such. 2007-10-29 23:02:31 +00:00
glx 94a710fa46 (svn r11159) -Fix (r11155): restore the ability to save in a non existing file 2007-09-25 14:15:38 +00:00
glx 54fe17050b (svn r11156) -Fix r11155: fix one compiler makes the other warn ;) 2007-09-24 19:55:50 +00:00
rubidium 2408a68910 (svn r11155) -Fix [FS#1253]: work around a nasty MS CRT 8 SP1 bug making it virtually impossible to debug 32bpp games under MSVC (http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=257606). Patch by boekabart. 2007-09-24 19:15:42 +00:00
truelight 631dc06212 (svn r11119) -Codechange: analyze .tar files upon loading, remembering their files and offsets, which speeds up .tar handling with a big factor
-Fix: several win32 .tar support problems
-Fix: better checking of .tar versions and other minor things
-Codechange: don't call fclose() but FioFClose to close a file
2007-09-16 18:10:52 +00:00
truelight 6a8e5398a2 (svn r11117) -Add: add support for 7z .tar files, which are in the 'old' (deprecated) format 2007-09-15 15:38:09 +00:00
glx 17870089d0 (svn r11116) -Fix (r11106): tar loader was not compiled for WIN32 2007-09-15 15:21:17 +00:00
truelight f438dcdd67 (svn r11109) -Fix r11106: it is silly to use a std::list for something that is cleary a std::vector (less memory ;) WHOHO!) 2007-09-14 23:03:28 +00:00
truelight 5647bd5157 (svn r11106) -Add: added .tar support; you can pack all files in your data/ dir in how ever many .tar files you like, keeping the dir-structure equal to the unpacked version, and OpenTTD can handle them just like the files were unpacked
-Note: useful for GRF-packs and 32bpp PNGs. Don't forget to keep the dir-structure alive for 32bpp PNGs!
  -Note: file-loading-order: search-paths, .tar-files in the order found on disk (can be anything at all, don't depend on it.. use 'openttd -d1' to see which order they are added)
2007-09-14 22:25:00 +00:00
truelight 7648df7fb5 (svn r11100) -Fix r11099: darn typos... 2007-09-13 18:50:42 +00:00
truelight 3d0ac92267 (svn r11099) -Codechange: allow on opening of a file via FioFOpenFile to request the size of the file, so we can keep that in mind 2007-09-13 18:46:29 +00:00
truelight 8cd9ab9b7e (svn r11095) -Codechange: don't abuse 'file_pos' by storing the file_slot in it too, but use a nice seperate variable for it
-Note: on a side-note, this allows files bigger than 16+ MiB, needed for tar-support
2007-09-13 18:22:34 +00:00
truelight 3a45534e4e (svn r10715) -Fix: limited-fs code was broken 2007-07-28 12:45:27 +00:00
glx 337d56d4bb (svn r10272) -Fix (FS#916): remove more invalid characters from savegame names 2007-06-22 19:30:59 +00:00
rubidium f806b46cc9 (svn r10246) -Fix (r10297): some forgotten money conversions and truncation issues. Thanks to benc for providing the patch. 2007-06-21 14:32:27 +00:00
rubidium 5938dea88d (svn r10194) -Codechange: prefer the current working directory above the user's home directory when openttd.cfg exists in the current working directory, otherwise prefer the home directory. 2007-06-17 21:26:57 +00:00
rubidium b2799961bc (svn r10188) -Codechange: make it a little easier to load a savegame from the console:
-g <absolute path>
 -g <relative path from current working directory>
 -g <relative path from within the savegame directory>
2007-06-17 20:09:05 +00:00
rubidium 347c28b71a (svn r10182) -Codechange: rewrite most part of the file loading/searching to be more flexible.
-Codechange: add support for personal directories on Windows.
-Fix [FS#153, FS#193, FS#502, FS#816, FS#854]: fix issues related to fixed names, fixed places of files/directories and application bundles.
2007-06-17 15:48:57 +00:00
truelight b7443d800b (svn r10143) -Add: store the filename of the grfs opened and allow easy access to the name
-Codechange: store the SpriteID in the spritecache too
-Add: add a PNG loader for graphical files
-Documentation: added a document to explain the PNG format
2007-06-13 16:21:11 +00:00
rubidium 73790d9cd6 (svn r10116) -Fix [FS#850]: remove invalid characters (for the file system) from savegame names. Based on a patch by TheJosh. 2007-06-12 15:46:34 +00:00
rubidium 142f2aba15 (svn r10073) -Codechange: make the NewGRF paths in the config file without any full paths (again). 2007-06-08 21:16:17 +00:00
rubidium b17a89c53d (svn r9990) -Fix: MorphOS and AmigaOS do not like "//" in filenames as that means the same as "/../" in means in Unix. 2007-05-30 18:24:54 +00:00
rubidium db91588845 (svn r9560) -Codechange: add support for multiple 'base' directories for newgrf searching.
-Codechange: do not add duplicate files to the newgrf list.
2007-04-04 12:03:10 +00:00
rubidium 5171c3fbe4 (svn r9281) -Fix [FS#687]: compile failure when compiling with 'home directories' enabled (stepancheg). 2007-03-18 18:02:24 +00:00
rubidium 7fb3b4f83e (svn r9271) -Codechange: make the language pack initialisation a little more clear and extendable (more language paths). 2007-03-17 22:21:05 +00:00
rubidium 50b2088674 (svn r9266) -Codechange: unify the retrieval of the base paths a little more. 2007-03-17 11:36:04 +00:00
rubidium 1926b9038d (svn r9130) -Codechange: move the fileio functions that do open a file into a Fio slot together. 2007-03-12 15:40:12 +00:00
rubidium 9299e76a25 (svn r9129) -Codechange: unify parts of DeterminePaths. 2007-03-12 15:25:33 +00:00
rubidium 24c4d5b06d (svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {}; 2007-03-07 12:11:48 +00:00
rubidium 36bb92ae24 (svn r9050) -Codechange: Foo(void) -> Foo() 2007-03-07 11:47:46 +00:00
belugas b71354dc40 (svn r8987) -Cleanup: doxygen changes. Again. Mostly (still) @files missing tags and (more than just) a few comments style. 2007-03-03 04:04:22 +00:00
belugas 978d7da818 (svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style. 2007-03-01 01:24:44 +00:00
truelight 7cd68b5a07 (svn r8647) -Codechange: add a general way to handle platforms who can only have a limited amount of file-descripters open at any given time.
The Fios keeps track how many times a file is opened, and tries to close up files which aren't used often.
  The first platform using this is PSP. Patch based on the work of Turulo.
2007-02-08 23:46:25 +00:00
KUDr e373ea7096 (svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files renamed to .cpp) 2007-01-10 18:12:09 +00:00
Renamed from src/fileio.c (Browse further)