Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-06-05 | Add: introduce CMake for project management | Patric Stout | |
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-01 | Fix #8024: make online content gui more responsive while loading | Yexo | |
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-05-21 | Codechange: Replace custom linked list for GRF texts with STL vectors and ↵ | Michael Lutz | |
strings. | |||
2020-05-07 | Fix #8117: Memory leak in admin port (#8122) | glx22 | |
2020-04-05 | Fix #8060, 5880f14: Restore admin network API compatibility. | frosch | |
2020-02-23 | Codechange: Limit field width to avoid sscanf crash | Quipyowert2 | |
2020-02-08 | Fix #7976: Don't kick the client doing the rcon | glx | |
2020-02-04 | Feature #7756: Allow server to supply a reason to kicked/banned clients | Bjarni Thor | |
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-01-12 | Feature: Auto-restart loads the original resources again | Berbe | |
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-07 | Codechange: Remove std::function from Pool iteration wrapper | Jonathan G Rennison | |
Add a separate template wrapper for filtered iteration | |||
2019-12-21 | Fix: unused variable warnings | glx | |
2019-12-21 | Codechange: Replace FOR_ALL_TOWNS with range-based for loops | glx | |
2019-12-21 | Codechange: Replace vehicle related FOR_ALL with range-based for loops | glx | |
2019-12-21 | Codechange: Replace network related FOR_ALL with range-based for loops | glx | |
2019-12-21 | Codechange: Replace station related FOR_ALL with range-based for loops | glx | |
2019-12-21 | Codechange: Replace FOR_ALL_COMPANIES with range-based for loops | glx | |
2019-11-10 | Cleanup: Removed SVN headers | S. D. Cloudt | |
2019-10-07 | Fix: [Cygwin] Fix missing AI_ADDRCONFIG declaration | Joe Stringer | |
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-09-30 | Fix: clang and MSVC warnings (glx) | Charles Pigott | |
2019-09-30 | Fix: GCC9's warnings about deprecated implicit assignment operators | Charles Pigott | |
2019-09-29 | Fix: Some typos found using codespell | JMcKiern | |
2019-05-04 | Codechange: replace grow() usage in ↵ | glx | |
ClientNetworkContentSocketHandler::OnReceiveData() | |||
2019-04-29 | Codechange: Remove Company/OwnerByte types | Charles Pigott | |
2019-04-27 | Fix #7165: Missed another 'Append() --> push_back()' replacement (#7548) | PeterN | |
2019-04-25 | Fix dcb2571: Missing override keywords | Niels Martin Hansen | |
2019-04-24 | Fix: Also breaking for warning text in set company password | Niels Martin Hansen | |
2019-04-24 | Add: Warn players that company passwords are not truly secure | Niels Martin Hansen | |
2019-04-18 | Codechange: use std::vector for _language_dropdown | glx | |
2019-04-13 | Codechange: use std::sort() in GUIList | glx | |
2019-04-10 | Codechange: Use null pointer literal instead of the NULL macro | Henry Wilson | |
2019-04-09 | Fix: Crash due to use of invalid iterator in ClientNetworkContentSocketHandler | Jonathan G Rennison | |
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 | Remove: AutoFreeSmallVector. | Michael Lutz | |
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 | Codechange: If something is a vector of strings, use a vector of strings ↵ | Michael Lutz | |
instead of an AutoFreeSmallVector. | |||
2019-04-06 | Codechange: Use platform independent C++11 function for sleeping on a thread. | Michael Lutz | |
2019-04-06 | Codechange: Use atomic variables for thread synchronization where useful. | Michael Lutz | |
2019-04-06 | Codechange: Replace custom thread code with C++11 thread objects. | Michael Lutz | |
We assume a conforming C++11 compiler environment that has a valid <thread>-header. Failure to run a real thread is handled gracefully. | |||
2019-04-06 | Codechange: Replace custom mutex code with C++11 mutex'es. | Michael Lutz | |
A conforming compiler with a valid <mutex>-header is expected. Most parts of the code assume that locking a mutex will never fail unexpectedly, which is generally true on all common platforms that don't just pretend to be C++11. The use of condition variables in driver code is checked. | |||
2019-04-05 | Fix #7439: don't overwrite CompanyRemoveReason with ClientID (#7465) | glx22 | |
2019-03-29 | Fix #7434: Incorrect use of vector iterator. (#7437) | PeterN | |
2019-03-28 | Fix: MSVC warnings (#7423) | glx22 | |
2019-03-26 | Fix #7165: Missed 'Append() --> push_back()' replacement | stormcone | |
2019-03-26 | Cleanup: Remove unused size template parameters from SmallMap and ↵ | Henry Wilson | |
Auto[Free|Delete]SmallVector | |||
2019-03-26 | Codechange: Removed SmallVector completely | Henry Wilson | |
2019-03-26 | Codechange: Replaced SmallVector::[Begin|End]() with std alternatives | Henry Wilson | |
2019-03-26 | Codechange: Replaced SmallVector::Include() with include() | Henry Wilson | |
2019-03-26 | Codechange: Replaced SmallVector::Find() with std::find() | Henry Wilson | |
2019-03-26 | Codechange: Replaced SmallVector::Append() with ↵ | Henry Wilson | |
std::vector::[push|emplace]_back() | |||
2019-03-26 | Codechange: Replaced SmallVector::Erase() with std::vector::erase() | Henry Wilson | |
2019-03-26 | Codechange: Replaced SmallVector::Get() const with std alternatives | Henry Wilson | |
2019-03-26 | Codechange: Replaced SmallVector::Contains() with std::find() pattern | Henry Wilson | |