Commit Graph

24427 Commits (b7851e51adf0fb0d39ed34a579cf6fe68d8949be)
 

Author SHA1 Message Date
Patric Stout b7851e51ad Fix: set SP_WORKING_DIR earlier with '-c'
On Windows, relative folders don't work so well. So we need to
lookup the full path. This is best done in DetermineBasePaths()
and as a bonus that only sets SP_WORKING_DIR once.
4 years ago
Michael Lutz a660dce295 Fix: [CMake, MSVC] Don't copy regression exe's into a subfolder as they need have their lang files next to them. 4 years ago
Patric Stout abb746fae3
Fix: [Actions] cleanup ci-build workflow to be up-to-date (#8375)
Also, while at it, make it more like the upcoming release-workflow,
so they look a lot more similar.

Functional it should be the same, except that Windows should
now also output when a test fails.
4 years ago
Patric Stout 5d0331ecdc
Fix 8bef06a2: don't use "extern" when you want to implement a global (#8373) 4 years ago
Patric Stout da7c74ba7e Fix: change the working-dir searchpath when using '-c'
Basically, with '-c' you now create a sandbox. It will still use
your personal-dir and global-dir to find files you installed there,
but all new files are stored with a base folder identical to the
folder the configuration is in.

This is a bit of an old bug, that we many have tried to solve in
various of different ways. The code has grown sufficiently complex
that it is hard to see what consequences of actions are. This is
in my opinion the most harmless solution, while increasing the
usefulness of the '-c' flag.

In essence, the problem was that empty folders were always created
in the directory where the configuration was, but as that directory
wasn't added to any searchpath, files weren't stored there, unless
by accident it was a folder already on the searchpath. For example,
if you do './openttd -c local.cfg', it did work as expected. But
in the more generic variant, it did not.

With this patch, you can run './openttd -c /new/folder/local.cfg',
and it will create and prepare that folder to receive new files.

'content_download' is also stored in the directory the
configuration is in; this was already the case. Important to
note that there is only one search-path for 'content_download'.
In other words, when using '-c', it will not look in '~/.openttd'
inside the 'content_download' folder.
4 years ago
Patric Stout 4e12aac9c0 Codechange: to create or not to create a folder, that is the question
This was just weird. With XDG _personal_dir was created already,
but later on it was checked if it was different from config_dir,
and the creation was skipped. All this checking and validation
makes my head spin .. let's make it a bit more simple.
4 years ago
Patric Stout c66bd18a10
Add: save openttd.cfg immediately on changing a setting (#8358)
Formally it was only done on exit. This means that if it crashes
changes in settings were not stored. This is often rather
frustrating. Additionally, targets (like emscripten) where people
are unlike to use "Exit Game", will never see their configuration
stored.

The drawback is that on every setting change there is some minor
I/O of writing the ini file to disk again.
4 years ago
translators 40edc2863c Update: Translations from eints
finnish: 1 change by hpiirai
4 years ago
glx22 6fae0b83d9 Add: [CMake] targets to generate documentation 4 years ago
translators 7f5afbfdf5 Update: Translations from eints
slovak: 2 changes by FuryPapaya
4 years ago
glx22 e2eafd86de Fix: Prevent infinite recursion in commit checker 4 years ago
translators 20151e41ea Update: Translations from eints
korean: 1 change by telk5093
french: 1 change by glx22
4 years ago
translators 819ce1bf49 Update: Translations from eints
slovak: 30 changes by FuryPapaya
lithuanian: 37 changes by devastatorius
4 years ago
Owen Rudge 535e18b54e Change: Don't display OS name when the user is exiting the game 4 years ago
Patric Stout 2864d019f0
Fix: useless warning with -snull and no BaseSounds available (#8361)
If I explicitly tell the system I do not want sound, I still get
presented a nice message I do not have any BaseSounds available
on my system, and that I should download one to enjoy sound. Well,
let me tell you, with "-snull" that is really really not going to
help. So please, be quiet, and let me enjoy the game without
"boooooo" and "DING DING DING".

Thank you.
4 years ago
Owen Rudge 6e689e2038 Fix: FreeType is still required on macOS 4 years ago
Patric Stout dddf885fb4
Remove: console command "content select all" (#8363)
The intention of this function was that you could download
everything after a filter was applied; but this never really
took off. Instead, a select few people used this functionality
to download every available package on BaNaNaS. This is not in
the spirit of this service. Additionally, these few people were
good for 70% of the consumed bandwidth of BaNaNaS.
4 years ago
frosch 6198a4776b Change: [NewGRF] Use aircraft property 12 also for helicopters.
Due to keeping compatibility we can only do this for NewGRF-defined sound effects.
4 years ago
Charles Pigott cfa1b1e006 Fix: Compile warnings when asserts are disabled 4 years ago
Patric Stout ad47ebc1a8 Change: don't encourage the use of LZO
LZO was used before the first version we track in our version
control system, which dates back to Aug 2004. Somewhere before
that time a few savegames / scenarios exist which use LZO. No
other savegame / scenario does since then. Let's not encourage
people to install something that ancient.

There are no scenarios on BaNaNaS that require LZO.
4 years ago
Patric Stout 731af1f1f3 Codechange: don't do work GetVariableAddress() is already doing 4 years ago
Patric Stout c98717cb45 Fix: do not add an offset to a nullptr
This is, by specs, undefined behaviour. See
https://reviews.llvm.org/D67122

In cases where this is done, optimizations done by LLVM can
generate code that causes crashes.

GetVariableAddress() had two (legit) ways this could happen:
- For SaveLoad set to global
- For SaveLoad set to SLE_VAR_NULL, where sld->address is always
  a nullptr, and object could or could not be a nullptr.
4 years ago
Michael Lutz c558936ec3
Fix 63ccb36ef3: Crash trying to load TTO/TTD savegames. (#8356) 4 years ago
Patric Stout 6ad3cca4ca
Fix a49fdb7ebb: bootstrap crash when trying to load new baseset (#8353)
Using nullptr as "name" crashes on "name.empty()". Use an empty
string instead.
4 years ago
glx22 a06fe8e8a7 Fix: [CMake] cross-compiling requires native tools 4 years ago
Rasmus Jonsson 0b2dd2c5cd Fix: [NoAI] don't notify caught exceptions 4 years ago
Tocho Tochev 06adb9ace3 Fix: Spelling 4 years ago
translators d19f7b94fb Update: Translations from eints
norwegian (bokmal): 8 changes by buzzCraft
lithuanian: 5 changes by devastatorius
4 years ago
Charles Pigott 0a9aed0522 Fix: [CMake] Don't detect XAudio2 if defines are missing 4 years ago
Charles Pigott b8ec88f6af Codechange: Suppress compiler warning about signed/unsigned printf values 4 years ago
translators 6ef1eaf1f5 Update: Translations from eints
norwegian (bokmal): 9 changes by buzzCraft
4 years ago
translators 821592ddeb Update: Translations from eints
norwegian (bokmal): 10 changes by buzzCraft
4 years ago
Tyler Trahan 521f41fc10
Fix: update links to new OpenTTD wiki (#8341) 4 years ago
translators 92236ccd2f Update: Translations from eints
indonesian: 117 changes by dimaspaf14
4 years ago
translators 8e4a3a0e76 Update: Translations from eints
danish: 1 change by achton
4 years ago
translators 79f00277c4 Update: Translations from eints
slovak: 16 changes by FuryPapaya
4 years ago
translators 4dc986f32d Update: Translations from eints
slovak: 19 changes by FuryPapaya
4 years ago
translators 918857e03b Update: Translations from eints
korean: 1 change by telk5093
slovak: 86 changes by FuryPapaya
4 years ago
translators f23a7a59b6 Update: Translations from eints
slovak: 26 changes by FuryPapaya
polish: 1 change by yazalo
4 years ago
translators 9bd2e5bf49 Update: Translations from eints
slovak: 86 changes by FuryPapaya
polish: 57 changes by yazalo
4 years ago
Lars Wendler cf29d23ba4 Fix: build with icu-68.1
icu-68.1 removed public macro definitions for TRUE and FALSE

Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
4 years ago
translators 421304c850 Update: Translations from eints
afrikaans: 3 changes by Gwenney
4 years ago
translators 4797e095d9 Update: Translations from eints
hungarian: 1 change by andrejmoltok
portuguese (brazilian): 64 changes by JuniuSeifero
4 years ago
translators a441973d17 Update: Translations from eints
romanian: 1 change by ALEX11BR
4 years ago
translators 59ae40af53 Update: Translations from eints
vietnamese: 24 changes by KhoiCanDev
4 years ago
translators 97d7c0a8e1 Update: Translations from eints
tamil: 76 changes by Aswn
4 years ago
translators eb01f2e08d Update: Translations from eints
romanian: 10 changes by ALEX11BR
tamil: 26 changes by Aswn
4 years ago
translators d9e7e8cec0 Update: Translations from eints
german: 17 changes by Luensche
4 years ago
translators b3362c526a Update: Translations from eints
german: 5 changes by Luensche
4 years ago
Jelle van der Waa b6615b2cd4 Fix: make reproducible by not embedding timestamps
By default gzip embeds a timestamps which makes building it twice
not reproducible, passing -n skips this embedding behaviour.

Motivation: https://reproducible-builds.org
4 years ago