Jonathan G Rennison
f764fcfb1f
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/console_cmds.cpp
# src/debug.cpp
# src/lang/vietnamese.txt
# src/network/core/address.cpp
# src/network/core/address.h
# src/network/core/config.h
# src/network/core/os_abstraction.cpp
# src/network/core/os_abstraction.h
# src/network/core/tcp_listen.h
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_gamelist.cpp
# src/network/network_server.cpp
# src/network/network_udp.cpp
# src/newgrf.cpp
# src/openttd.cpp
# src/saveload/saveload.h
# src/settings.cpp
# src/settings_table.cpp
# src/settings_type.h
# src/table/settings/network_settings.ini
2021-11-02 00:51:54 +00:00
Jonathan G Rennison
f54d69a60a
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/economy.cpp
# src/elrail.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/network/core/game_info.cpp
# src/newgrf_station.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/strings_func.h
# src/table/settings/network_settings.ini
# src/table/settings/settings.ini
2021-11-01 21:18:24 +00:00
SamuXarick
48b287a22f
Fix #9358 : Don't skip empty files in tar ( #9367 )
...
(cherry picked from commit 1e6a2163a5
)
2021-10-08 18:11:02 +01:00
Patric Stout
563884105f
Change: by default, make "unload all" leave stations empty ( #9301 )
...
(cherry picked from commit 7648483364
)
2021-10-08 18:11:02 +01:00
Rubidium
3e4d327451
Codechange: use the C++ std::getenv over the POSIX/C getenv
...
The C++ std::getenv is guaranteed thread-safe by the C++11 specification,
whereas the POSIX/C getenv might not be thread-safe by the C11 specification.
2021-07-10 22:55:46 +02:00
Patric Stout
75b6051b7a
Change: move sensitive information to secrets.cfg and private information to private.cfg
...
We often ask people for their openttd.cfg, which now includes their
passwords, usernames, etc. It is easy for people to overlook this,
unwillingly sharing information they shouldn't.
By splitting this information over either private.cfg or secrets.cfg,
we make it more obvious they shouldn't be sharing those files, and
hint to what is inside them.
2021-07-02 14:30:14 +02:00
SamuXarick
1e6a2163a5
Fix #9358 : Don't skip empty files in tar ( #9367 )
2021-06-18 00:08:49 +02:00
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
2021-06-13 12:45:45 +02:00
Patric Stout
ed3946e295
Add: '-X' option to ignore global folders in the search path ( #9341 )
...
This is extreme useful for automated testing. Without this, OpenTTD
will always look in your personal-dir (like ~/.local/share/openttd
or %USER%\Documents\OpenTTD). For most users this is exactly what
we want, that there is a shared place for all their files.
However, for automated testing this is rather annoying, as your
local development files influence the automated test. As such,
'-X' counters this, and only gives the local folders. This is
especially useful in combination with '-x' and '-c'.
2021-06-10 23:13:34 +02:00
Rubidium
e227bbaff0
Cleanup: remove the old FIO slot functions
...
(cherry picked from commit fa6abe1646
)
2021-05-30 22:02:14 +01:00
Rubidium
6bd12e24d7
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
...
(cherry picked from commit fdc11a9f94
)
2021-05-30 22:02:14 +01:00
Rubidium
525f6adcd0
Codechange: let NewGRF sounds make use of RandomAccessFile instead of the FIO slot functions
...
(cherry picked from commit c097bc9d7d
)
2021-05-30 08:23:39 +01:00
Rubidium
4b37044ef1
Codechange: use the new RandomAccessFile as backend for the FIO slot functions
...
(cherry picked from commit b144e56b2c
)
2021-05-30 08:21:09 +01:00
Rubidium
fa6abe1646
Cleanup: remove the old FIO slot functions
2021-05-08 12:39:34 +02:00
Rubidium
fdc11a9f94
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
2021-05-08 12:39:34 +02:00
Rubidium
c097bc9d7d
Codechange: let NewGRF sounds make use of RandomAccessFile instead of the FIO slot functions
2021-05-08 12:39:34 +02:00
Rubidium
b144e56b2c
Codechange: use the new RandomAccessFile as backend for the FIO slot functions
2021-05-08 12:39:34 +02:00
glx22
72cfb991e5
Codechange: Replace FOR_ALL_SEARCHPATHS with range-based for loops
...
(cherry picked from commit 983c7ade60
)
2021-05-06 21:17:32 +01:00
glx22
ffd30cf91b
Codechange: Replace FOR_ALL_TARS with range-based for loops
...
(cherry picked from commit 34215f7faa
)
2021-05-06 21:15:07 +01:00
glx22
983c7ade60
Codechange: Replace FOR_ALL_SEARCHPATHS with range-based for loops
2021-05-03 19:46:57 +02:00
glx22
34215f7faa
Codechange: Replace FOR_ALL_TARS with range-based for loops
2021-05-03 19:46:57 +02:00
Jonathan G Rennison
227041008f
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/debug.cpp
# src/lang/russian.txt
# src/misc_gui.cpp
# src/os/windows/crashlog_win.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/rail_cmd.cpp
# src/window_gui.h
2021-04-11 03:05:08 +01:00
Jonathan G Rennison
edfa04286b
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release.yml
# bin/CMakeLists.txt
# src/dock_gui.cpp
# src/lang/brazilian_portuguese.txt
# src/lang/catalan.txt
# src/lang/czech.txt
# src/lang/dutch.txt
# src/lang/english.txt
# src/lang/english_US.txt
# src/lang/estonian.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/german.txt
# src/lang/hungarian.txt
# src/lang/indonesian.txt
# src/lang/italian.txt
# src/lang/japanese.txt
# src/lang/korean.txt
# src/lang/lithuanian.txt
# src/lang/luxembourgish.txt
# src/lang/norwegian_bokmal.txt
# src/lang/polish.txt
# src/lang/portuguese.txt
# src/lang/romanian.txt
# src/lang/russian.txt
# src/lang/serbian.txt
# src/lang/simplified_chinese.txt
# src/lang/slovak.txt
# src/lang/spanish.txt
# src/lang/spanish_MX.txt
# src/lang/swedish.txt
# src/lang/tamil.txt
# src/lang/ukrainian.txt
# src/lang/vietnamese.txt
# src/newgrf.cpp
# src/newgrf_gui.cpp
# src/object_gui.cpp
# src/pathfinder/yapf/yapf_costrail.hpp
# src/pathfinder/yapf/yapf_node_rail.hpp
# src/rail_cmd.cpp
# src/roadveh_cmd.cpp
# src/town_cmd.cpp
# src/vehicle.cpp
# src/water_cmd.cpp
2021-04-11 02:39:33 +01:00
Niels Martin Hansen
e0561dbded
Fix #8713 : Change OTTD2FS and FS2OTTD to return string objects instead of static buffers
2021-04-07 09:31:47 +02:00
milek7
295f34a9df
Fix: Freeing LanguagePack with wrong size.
2021-04-02 10:12:25 +02:00
Charles Pigott
583304927b
Fix #8886 : Don't try to resolve folders within tars named '.'
...
(cherry picked from commit 2d7b34bc68
)
2021-03-28 23:55:26 +01:00
Charles Pigott
2d7b34bc68
Fix #8886 : Don't try to resolve folders within tars named '.'
2021-03-28 09:52:15 +01:00
Jonathan G Rennison
f4e29071be
Merge tag '1.11.0-beta2' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release.yml
# CMakeLists.txt
# src/blitter/32bpp_optimized.cpp
# src/debug.cpp
# src/gfx.cpp
# src/gfx_func.h
# src/lang/czech.txt
# src/lang/english.txt
# src/lang/italian.txt
# src/lang/swedish.txt
# src/lang/ukrainian.txt
# src/network/network_server.cpp
# src/os/windows/crashlog_win.cpp
# src/os/windows/win32.cpp
# src/pathfinder/follow_track.hpp
# src/screenshot.cpp
# src/settings_type.h
# src/spritecache.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/video_driver.cpp
# src/video/video_driver.hpp
# src/video/win32_v.cpp
2021-03-02 11:59:03 +00:00
Niels Martin Hansen
beeb9e0a1b
Remove: [Win32] Last pretenses of being able to build for Windows 95
2021-02-23 11:25:39 +01:00
Jonathan G Rennison
b7ddd486cf
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/aircraft_cmd.cpp
# src/blitter/32bpp_anim.cpp
# src/cargopacket.cpp
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/core/pool_func.hpp
# src/date.cpp
# src/economy.cpp
# src/error_gui.cpp
# src/ground_vehicle.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/french.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/linkgraph/mcf.cpp
# src/network/network_content.cpp
# src/network/network_server.cpp
# src/network/network_udp.cpp
# src/newgrf_engine.cpp
# src/newgrf_station.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/yapf/yapf_common.hpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/station_cmd.cpp
# src/station_kdtree.h
# src/string_func.h
# src/table/settings.ini
# src/tgp.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/train_gui.cpp
# src/tree_gui.cpp
# src/tunnelbridge_cmd.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/sdl_v.cpp
# src/video/win32_v.cpp
# src/viewport.cpp
# src/viewport_sprite_sorter_sse4.cpp
# src/window.cpp
2021-02-01 17:07:34 +00:00
Jonathan G Rennison
6c3e5642f8
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/crashlog.cpp
# src/fileio.cpp
# src/fileio_func.h
# src/fios_gui.cpp
# src/ini_load.cpp
# src/ini_type.h
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/network/network_client.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/os/windows/win32.cpp
# src/road_cmd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/settings.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/table/settings.ini
# src/tree_cmd.cpp
# src/tree_gui.cpp
# src/vehicle_base.h
# src/video/cocoa/cocoa_v.mm
# src/video/cocoa/event.mm
# src/video/cocoa/wnd_quartz.mm
# src/viewport.cpp
# src/widgets/tree_widget.h
2021-01-31 01:08:35 +00:00
Jonathan G Rennison
39df1c49a1
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/fileio.cpp
# src/group_gui.cpp
# src/industry.h
# src/lang/korean.txt
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/linkgraphjob.h
# src/linkgraph/linkgraphschedule.cpp
# src/linkgraph/linkgraphschedule.h
# src/openttd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/town_cmd.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
2021-01-30 18:27:35 +00:00
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
2021-01-08 11:16:18 +01:00
Michael Lutz
9ccef816f9
Codechange: [OSX] Re-arrange the OSX video driver code by combining all drawing code and moving the window/event handling to a different file.
...
This is just a code move/rename, not a functionality change.
2021-01-03 13:25:32 +01:00
Patric Stout
ab7da117e0
Add: always set PERSONAL_DIR "/content_download" in search path ( #8481 )
...
This means that if you start OpenTTD with "-c" to indicate another
location to store files, it can still read the content you already
downloaded from your PERSONAL_DIR. This folder is, however,
read-only.
This is useful for situations where you downloaded OpenGFX via
the content-service, but want to run the regression or want to
run with a clean configuration. With this change, you no longer
need to download OpenGFX again.
2021-01-03 11:10:56 +01:00
Charles Pigott
3dfee979a7
Codechange: Drop libxdg-basedir dependency in favour of finding the directories ourselves
2021-01-02 19:46:08 +00:00
Jonathan G Rennison
483ed2f468
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/commit-checker.yml
# src/openttd.cpp
2020-12-27 20:16:16 +00:00
Michael Lutz
b408fe77f7
Codechange: Use std::string in file scanners.
2020-12-27 13:19:25 +01:00
Michael Lutz
358056ec42
Codechange: Keep filenames of loaded Fio files in std::strings.
2020-12-27 13:19:25 +01:00
Michael Lutz
024a3f6259
Codechange: Use automatic memory management for language pack reading.
2020-12-27 13:19:25 +01:00
Michael Lutz
5cbb2da794
Codechange: Even more std::string usage in file IO.
2020-12-27 13:19:25 +01:00
Michael Lutz
65f65ad2ad
Codechange: Convert some more FIO functions to take std::string.
2020-12-27 13:19:25 +01:00
Michael Lutz
f3326d34e7
Codechange: Use std::string in FIO search path handling.
2020-12-27 13:19:25 +01:00
Michael Lutz
0c6e8a8123
Codechange: Store file search paths as std::string.
2020-12-27 13:19:25 +01:00
Michael Lutz
dd138fc460
Codechange: Stringify config file paths.
2020-12-27 13:19:25 +01:00
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
2020-12-27 10:55:42 +00:00
Michael Lutz
5575cb9133
Remove: Remnants of PSP support.
...
No active target is that limited in concurrent file descriptors.
2020-12-21 18:34:19 +01:00
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.
2020-12-13 22:45:50 +01:00
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.
2020-12-13 16:40:56 +01:00
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.
2020-12-13 16:40:56 +01:00