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
Jonathan G Rennison
9a05ea67d5
Add chicken bits setting
...
2 bits so far
2019-08-28 19:10:34 +01:00
Jonathan G Rennison
04ef407ddf
Merge branch 'jgrpp' into jgrpp-nrt
...
# Conflicts:
# .ottdrev-vc
# README.md
# jgrpp-changelog.md
# src/ship_cmd.cpp
2019-08-24 10:41:08 +01:00
Jonathan G Rennison
2e4b1d73d8
Avoid performing emergency network save more than once
2019-08-22 01:40:28 +01:00
Jonathan G Rennison
6ce7f22fe6
Send server desync log to client
2019-08-22 01:13:07 +01:00
Jonathan G Rennison
459a49cb24
Add flags for mismatch type to client desync log
2019-08-20 22:52:03 +01:00
Jonathan G Rennison
ec892879f4
Add passworded mechanism to change server game settings from client
2019-08-20 20:42:17 +01:00
Jonathan G Rennison
17c054a650
Use password hash for network server and rcon passwords
2019-08-20 20:04:34 +01:00
Jonathan G Rennison
0aa366a24b
Desync: Log seed and state checksum on desync
2019-08-06 03:03:40 +01:00
Jonathan G Rennison
a1d36b02f0
Network: Add state checksum which is check in network sync
2019-08-06 03:03:40 +01:00
Jonathan G Rennison
c941d2d2a6
Desync: Change sync event logging to desync debug level 2
2019-08-05 19:14:06 +01:00
Jonathan G Rennison
385960af4e
Network: Decrease sync frame period when desync occurs
2019-08-05 18:21:14 +01:00
Jonathan G Rennison
dbc5f1baed
Merge branch 'master' into jgrpp-nrt
...
# Conflicts:
# src/fontcache.cpp
# src/game/game_text.cpp
# src/lang/korean.txt
# src/os/macosx/crashlog_osx.cpp
# src/os/windows/crashlog_win.cpp
# src/station_cmd.cpp
# src/viewport.cpp
2019-07-11 20:03:23 +01:00
Jonathan G Rennison
36eb4165b8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/bridge_map.h
# src/crashlog.cpp
# src/industry.h
# src/linkgraph/linkgraph_type.h
# src/order_type.h
# src/saveload/afterload.cpp
# src/settings.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/table/settings.h.preamble
# src/train.h
# src/vehicle.cpp
# src/viewport.cpp
# src/viewport_func.h
# src/widgets/station_widget.h
# src/zoom_func.h
# src/zoom_type.h
2019-07-08 16:19:07 +01:00
Jonathan G Rennison
84d30e2f97
Fix packet overflow in ClientNetworkGameSocketHandler::SendDesyncLog
2019-06-14 22:09:18 +01:00
Jonathan G Rennison
96f000226e
Exclude virtual trains from various vehicle list iterations
2019-05-27 17:56:41 +01:00
Jonathan G Rennison
f3aff0fd7f
Avoid unnecessary reallocs in NetworkTCPSocketHandler::SendPacket
2019-05-23 22:53:17 +01:00
Jonathan G Rennison
97baff6fd8
Add client desync log to server desync log output
2019-05-23 22:53:17 +01:00
Jonathan G Rennison
cb0ca43eae
Use larger packets for server to client map/savegame transfer
2019-05-23 22:53:17 +01:00
Jonathan G Rennison
dc357c9239
Fix length checks in network packet send/recv binary
2019-05-23 22:53:17 +01:00
Jonathan G Rennison
002f5ca70e
Adjust desync log format and add company events to log
2019-05-20 19:38:47 +01:00
Jonathan G Rennison
2740537632
Handle case when ClientNetworkGameSocketHandler::SendChat is called after connection closed
2019-05-18 20:34:43 +01:00
Jonathan G Rennison
f37a93cecd
Add any output from CheckCaches to desync log
2019-05-18 18:31:08 +01:00
Jonathan G Rennison
fa55a1c002
Output a log, savegame and screenshot on desync events
2019-05-18 10:17:59 +01:00
glx
212140b88b
Codechange: replace grow() usage in ClientNetworkContentSocketHandler::OnReceiveData()
2019-05-04 19:50:53 +01:00
PeterN
9197926bca
Fix #7165 : Missed another 'Append() --> push_back()' replacement ( #7548 )
...
(cherry picked from commit 0ab6244f6b
)
2019-05-02 18:20:26 +01:00
Charles Pigott
5b34c8019f
Codechange: Remove Company/OwnerByte types
2019-04-29 17:40:22 +01:00
PeterN
0ab6244f6b
Fix #7165 : Missed another 'Append() --> push_back()' replacement ( #7548 )
2019-04-27 20:47:32 +01:00
Niels Martin Hansen
d5841109f0
Fix dcb2571
: Missing override keywords
2019-04-25 17:45:00 +02:00
Niels Martin Hansen
a64bd6e22c
Fix: Also breaking for warning text in set company password
2019-04-24 17:40:11 +02:00
Niels Martin Hansen
dcb2571888
Add: Warn players that company passwords are not truly secure
2019-04-24 17:40:11 +02:00
Jonathan G Rennison
bd2fdde759
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/sort_func.hpp
# src/rail_cmd.cpp
# src/timetable_cmd.cpp
# src/video/sdl_v.cpp
# src/video/win32_v.cpp
2019-04-23 08:11:52 +01:00
Jonathan G Rennison
ede88aa6cd
Fix multi-packet network content requests (ContentVector)
...
Broken by incorrect merge conflict resolution in ba34ec7ad
See #86
2019-04-18 22:53:44 +01:00
glx
8899272614
Codechange: use std::vector for _language_dropdown
2019-04-18 21:49:34 +02:00
Jonathan G Rennison
0d93ecb6bf
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/alloc_type.hpp
# src/group_gui.cpp
# src/newgrf.cpp
# src/saveload/economy_sl.cpp
# src/saveload/map_sl.cpp
# src/station_cmd.cpp
2019-04-16 18:03:08 +01:00
glx
2db88953e7
Codechange: use std::sort() in GUIList
2019-04-13 12:49:18 +01:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Jonathan G Rennison
f5747bf753
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/genworld_gui.cpp
# src/group_gui.cpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/toolbar_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
2019-04-11 18:12:22 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Jonathan G Rennison
f887b12be2
Add 3rd party mingw-std-threads headers to fix MinGW compilation
2019-04-10 17:35:43 +01:00
Jonathan G Rennison
01f957c51f
Fix: Crash due to use of invalid iterator in ClientNetworkContentSocketHandler
...
In particular this crash can be observed when using the
bootstrap GUI to download the base graphics.
In ClientNetworkContentSocketHandler::OnReceiveContentInfo
ClientNetworkContentSocketHandler::callbacks is iterated, using an iterator
cb->OnReceiveContentInfo() is called (cb is of type BootstrapAskForDownloadWindow)
This calls new BootstrapContentDownloadStatusWindow()
This inherits from BaseNetworkContentDownloadStatusWindow
The constructor of which calls _network_content_client.AddCallback(this)
This reallocates the std::vector which is being iterated in ClientNetworkContentSocketHandler::OnReceiveContentInfo
This results in iter being invalid, and an assertion failure occurs shortly
afterwards due to its use in the next iteration of cb->OnReceiveContentInfo()
Adjust all locations where ClientNetworkContentSocketHandler::callbacks
is iterated to avoid problematic behaviour
2019-04-09 22:56:23 +02:00
Michael Lutz
8b1880187a
Remove: AutoFreeSmallVector.
...
The last use was for storing a list of memory blocks. As the way these lists are accessed is very
specific, it is easier to just write an explicit destructor instead of trying to exactly match the behaviour.
2019-04-09 22:45:15 +02:00
Michael Lutz
e804173595
Codechange: If something is a vector of strings, use a vector of strings instead of an AutoFreeSmallVector.
2019-04-09 22:45:15 +02:00