Jonathan G Rennison
3adeff1883
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# cmake/CompileFlags.cmake
# src/bridge_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/town_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/toolbar_gui.cpp
# src/town.h
# src/town_cmd.cpp
2020-06-30 21:43:04 +01:00
TechGeekNZ
cf8ea74733
Update: Merge branch 'jgrpp_master_cmake' into jgrpp_cmake
2020-06-28 21:56:43 +01:00
duck
1bc7047af7
Doc: Acknowledge integer type mismatch in certain admin packets using AdminUpdateType ( #8238 )
2020-06-27 18:21:17 +02:00
Charles Pigott
224acb78b0
Fix: Compiler warnings about memsetting non-trivial classes
2020-06-27 14:51:14 +01:00
Jonathan G Rennison
1ac0d4a5b2
Fix: Thread unsafe use of NetworkAddress::GetAddressAsString
...
Remove static buffer form of NetworkAddress::GetAddressAsString.
This is used in multiple threads concurrently, and is not thread-safe.
Replace it with a form returning std::string.
2020-06-21 11:47:56 +01:00
Jonathan G Rennison
b0f192abc4
Fix: Racy use of flags in TCPConnecter::CheckCallbacks
...
conected and aborted flags are used concurrently from multiple threads.
2020-06-18 19:57:34 +02:00
Jonathan G Rennison
d160536315
Fix has_packets in ServerNetworkGameSocketHandler::SendMap
2020-06-18 17:06:07 +01:00
Jonathan G Rennison
663886843c
Win32: Wine: Oversize buffer for WSAIoctl/SIO_GET_INTERFACE_LIST
...
This is a workaround for https://bugs.winehq.org/show_bug.cgi?id=49371
See also: 1e7a73b2
2020-06-12 17:15:03 +01:00
Patric Stout
56d54cf60e
Add: introduce CMake for project management
...
CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.
Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.
This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.
Addtiionally, this heavily improves our detection of libraries, etc.
2020-06-05 19:36:05 +02:00
Jonathan G Rennison
677940cfc6
Merge branch 'master' into jgrpp
2020-06-01 20:39:46 +01:00
Yexo
a9b3312d1a
Fix #8024 : make online content gui more responsive while loading
...
Previously the internal content list was invalidated and sorted for
every new item added. Now the sorting is delayed until the GUI is
drawn, which means we only sort once per GUI tick.
Since the amount of incoming items per GUI tick is not controlled by
the GUI but rather by network speed, we were previously doing a lot
of duplicate work per tick, causing the mouse cursor to lag while
the list was initialized.
2020-06-01 10:59:11 +02:00
Jonathan G Rennison
f8d6e781ba
Merge branch 'master' into jgrpp
...
# Conflicts:
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj.filters
# src/base_consist.h
# src/company_base.h
# src/newgrf_config.cpp
# src/newgrf_config.h
# src/openttd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/station_sl.cpp
# src/settings.cpp
# src/signs_base.h
# src/string.cpp
# src/string_func.h
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/town_cmd.cpp
# src/vehicle.cpp
# src/vehicle_cmd.cpp
# src/video/cocoa/cocoa_v.mm
# src/video/null_v.cpp
2020-05-21 22:24:01 +01:00
Michael Lutz
43cd892e0c
Codechange: Replace custom linked list for GRF texts with STL vectors and strings.
2020-05-21 20:02:34 +02:00
Jonathan G Rennison
58c02030c2
Network: Avoid racy use of flags in TCPConnecter::CheckCallbacks
2020-05-07 20:53:50 +01:00
Jonathan G Rennison
ef7e658dee
Network: Remove static buffer form of NetworkAddress::GetAddressAsString
...
This is used in multiple threads concurrently
2020-05-07 20:53:50 +01:00
Jonathan G Rennison
a1d85b812b
Network: Use unique_ptr for packets, use deque for packet queues
2020-05-07 20:53:50 +01:00
Jonathan G Rennison
caa27cfa39
Network: Fix locking issues around server map PacketWriter
2020-05-07 20:53:50 +01:00
glx22
82573a5e73
Fix #8117 : Memory leak in admin port ( #8122 )
2020-05-07 02:00:53 +02:00
Jonathan G Rennison
b209b37db9
Add new CommandFlags value: CMD_SERVER_NS
2020-04-14 22:03:04 +01:00
Jonathan G Rennison
86b6e9727f
Cheats: Enable setting magic bulldozer, tunnels and jet crashes in multiplayer
2020-04-14 20:41:37 +01:00
Jonathan G Rennison
1e7a73b2c7
Win32: Check for buffer overrun when calling WSAIoctl/SIO_GET_INTERFACE_LIST
...
This has been observed on Wine
2020-04-11 01:18:03 +01:00
Jonathan G Rennison
f077c3bf6e
Merge branch 'master' into jgrpp
2020-04-06 20:58:54 +01:00
frosch
7fe291667f
Fix #8060 , 5880f14
: Restore admin network API compatibility.
2020-04-05 18:36:21 +01:00
Jonathan G Rennison
8fb0b638fa
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/network/network.cpp
2020-03-11 23:16:32 +00:00
Jonathan G Rennison
8f442500ea
Change how dirty screen, window and viewport areas are tracked for later redrawing
...
Track dirty viewport areas seperately form general screen redraws.
Maintain a dirty block grid per viewport, with a smaller block size.
Use even smaller block size in viewport map mode.
Use a rectangle array for general screen redraws instead of a block grid.
Add a dirty bit to windows and widgets, to simplify the common case
of repainting a whole window or widget, without catching
neighbouring windows or viewports.
2020-03-05 00:27:17 +00:00
Quipyowert2
d1b7eb2de1
Codechange: Limit field width to avoid sscanf crash
2020-02-23 19:04:34 +00:00
Jonathan G Rennison
babe98cdb1
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/network/network_server.h
# src/pathfinder/yapf/yapf_road.cpp
# src/viewport.cpp
2020-02-09 15:43:47 +00:00
glx
2b1a7ceb4e
Fix #7976 : Don't kick the client doing the rcon
2020-02-08 09:03:14 +01:00
Bjarni Thor
5880f1479f
Feature #7756 : Allow server to supply a reason to kicked/banned clients
...
This commit adds the missing feature of allowing the server owner to
provide a reason for kicking/banning a client, which the client sees in
a pop-up window after being kicked. The implementation extends the
network protocol by adding a new network action called
NETWORK_ACTION_KICKED that is capable of having an error string, unlike
the other network error packages. Additionally, the kick function
broadcasts a message to all clients about the kicked client and the
reason for the kick.
2020-02-04 22:17:39 +00:00
Jonathan G Rennison
dd99fd646d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/base_station_base.h
# src/industry.h
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/lang/korean.txt
# src/os/macosx/crashlog_osx.cpp
# src/station_cmd.cpp
# src/town.h
# src/town_cmd.cpp
# src/town_gui.cpp
2020-01-20 18:36:55 +00:00
Berbe
2fc2058b3b
Feature: Auto-restart loads the original resources again
...
If the game was started loading a savegame or scenario, auto-restart will load a new random map.
This is inconsistent with the case in which a heightmap was loaded, as in that case the heightmap is kept as a basis for a new game.
This proposal solves this heterogeneity be considering the originally loaded resource shall be kept, hence savegames & scenarios shall be reloaded
2020-01-12 23:47:19 +01:00
Jonathan G Rennison
150dfba95b
Codechange: Remove std::function from Pool iteration wrapper
...
Add a separate template wrapper for filtered iteration
2020-01-07 09:00:45 +00:00
Jonathan G Rennison
61934fdfdc
Remove std::function from Pool iteration wrapper
...
Add a separate template wrapper for filtered iteration
2020-01-06 19:09:24 +00:00
Jonathan G Rennison
7960db35f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# config.lib
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/aircraft_cmd.cpp
# src/base_station_base.h
# src/core/pool_type.hpp
# src/disaster_vehicle.cpp
# src/economy.cpp
# src/engine.cpp
# src/group.h
# src/group_cmd.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/network/network_command.cpp
# src/network/network_server.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/settings_gui.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehiclelist.cpp
# src/window_type.h
2020-01-06 18:45:51 +00:00
glx
e3c75a30ba
Fix: unused variable warnings
2019-12-21 20:13:03 +01:00
glx
ee7a8eebca
Codechange: Replace FOR_ALL_TOWNS with range-based for loops
2019-12-21 20:13:03 +01:00
glx
d8a1be48cd
Codechange: Replace vehicle related FOR_ALL with range-based for loops
2019-12-21 20:13:03 +01:00
glx
41232f18c1
Codechange: Replace network related FOR_ALL with range-based for loops
2019-12-21 20:13:03 +01:00
glx
ddabfed1cd
Codechange: Replace station related FOR_ALL with range-based for loops
2019-12-21 20:13:03 +01:00
glx
3a14cea068
Codechange: Replace FOR_ALL_COMPANIES with range-based for loops
2019-12-21 20:13:03 +01:00
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
c84a454d70
Network: Use shorter UDP MTU where data can be split across multiple packets.
2019-10-31 20:40:07 +00:00
Jonathan G Rennison
03fbe87752
Merge branch 'master' into jgrpp
2019-10-12 00:56:56 +01:00
Joe Stringer
b4f1056097
Fix: [Cygwin] Fix missing AI_ADDRCONFIG declaration
...
Fixes the following complaints:
src/network/core/address.cpp: In member function 'const sockaddr_storage* NetworkAddress::GetAddress()':
src/network/core/address.cpp:134:55: error: 'AI_ADDRCONFIG' was not declared in this scope
this->Resolve(this->address.ss_family, SOCK_STREAM, AI_ADDRCONFIG, nullptr, ResolveLoopProc);
Signed-off-by: Joe Stringer <joe@wand.net.nz >
2019-10-07 21:36:00 +02:00
Jonathan G Rennison
edfd378e93
Merge branch 'master' into jgrpp
...
# Conflicts:
# source.list
# src/blitter/32bpp_anim.cpp
# src/linkgraph/linkgraphjob.cpp
# src/order_cmd.cpp
# src/vehicle.cpp
# src/vehicle_type.h
2019-10-05 21:45:54 +01:00
Charles Pigott
fe9731d32c
Fix: clang and MSVC warnings (glx)
2019-09-30 14:00:06 +01:00
Charles Pigott
71a3e83468
Fix: GCC9's warnings about deprecated implicit assignment operators
2019-09-30 14:00:06 +01:00
JMcKiern
04f659e768
Fix: Some typos found using codespell
2019-09-29 21:27:32 +01:00
Jonathan G Rennison
ba9d1a0390
Merge branch 'jgrpp' into jgrpp-nrt
...
# Conflicts:
# .ottdrev-vc
# README.md
# jgrpp-changelog.md
2019-08-29 01:01:45 +01:00