Commit Graph

17218 Commits (f8fb9fda6bb050d22b878dea16c4b5dfaa8607f9)

Author SHA1 Message Date
Charles Pigott a5681d3eba Codechange: Remove GoalTypeByte 6 years ago
Charles Pigott 327ff89808 Codechange: Remove PauseModeByte 6 years ago
Charles Pigott e18c8c30be Codechange: Remove RoadTypesByte 6 years ago
Charles Pigott 644f4c3547 Codechange: Set size of SettingGuiFlag & SettingDescType enums, and use them properly 6 years ago
Charles Pigott 0a53ee8cfe Codechange: Remove PartOfSubsidyByte 6 years ago
Charles Pigott 5d66d8fd7d Codechange: Remove ExpensesTypeByte 6 years ago
Charles Pigott 2e1936da64 Codechange: Remove SourceTypeByte type 6 years ago
Charles Pigott 5b34c8019f Codechange: Remove Company/OwnerByte types 6 years ago
Charles Pigott fcf06ba4c4 Codechange: Remove StationClassIDByte, and drop STAT_CLASS_MAX by one 6 years ago
Charles Pigott 60e31c7cfa Codechange: Remove OrderTypeByte 6 years ago
Charles Pigott 96097b34a5 Codechange: Remove Direction*Byte types 6 years ago
Charles Pigott 9f3928658b Codechange: Remove Track{dir,}{Bits,}Byte types 6 years ago
Charles Pigott 931d32f414 Codechange: Remove RailTypeByte type 6 years ago
Charles Pigott 10ba431d21 Codechange: Remove SpriteTypeByte type 6 years ago
Charles Pigott 119ea7a195 Codechange: Remove StationHadVehicleOfTypeByte type 6 years ago
Charles Pigott fb6ae81415 Codechange: Remove StationFacilityByte type 6 years ago
Charles Pigott 09567bf0b3 Codechange: Remove StoryPageElementTypeByte type 6 years ago
Charles Pigott f20b75d712 Codechange: Remove TownLayoutByte type 6 years ago
Charles Pigott 0e439aeab7 Codechange: Remove TownFoundingByte type 6 years ago
Charles Pigott 0a57db01af Codechange: Remove TrainForceProceedingByte type 6 years ago
Charles Pigott 69a6c494bf Codechange: Set VehicleType's base type to byte instead of using VehicleTypeByte 6 years ago
Charles Pigott 96a4787710 Codechange: Set ZoomLevel's base type to byte instead of using ZoomLevelByte 6 years ago
translators aa220b2375 Update: Translations from eints
indonesian: 2 changes by fanioz
dutch: 3 changes by JanWillem
korean: 3 changes by telk5093
6 years ago
PeterN 0ab6244f6b
Fix #7165: Missed another 'Append() --> push_back()' replacement (#7548) 6 years ago
translators ead5b55119 Update: Translations from eints
spanish (mexican): 3 changes by Absay
russian: 3 changes by Lone_Wolf
6 years ago
peter1138 b454ca7110 Fix 81d335b: Coverage button missing from town window in scenario editor. 6 years ago
translators f354b869c1 Update: Translations from eints
indonesian: 3 changes by fanioz
croatian: 3 changes by VoyagerOne
6 years ago
translators 5b0ce8c214 Update: Translations from eints
finnish: 3 changes by hpiirai
italian: 3 changes by lorenzodv
6 years ago
Niels Martin Hansen d5841109f0 Fix dcb2571: Missing override keywords 6 years ago
peter1138 81d335b081 Feature: Add station coverage area display for towns. 6 years ago
peter1138 81f0f97406 Feature: Add existing station coverage area display when placing new station parts. 6 years ago
peter1138 b6733edd17 Feature: Add coverage area display for existing stations. 6 years ago
Niels Martin Hansen 37daf43037 Change: Zoom title game by UI zoom level 6 years ago
Niels Martin Hansen 58609e8fa6 Fix: Manager name in company news was being clipped 6 years ago
Niels Martin Hansen 2c67af391b Fix: Scale news ticker scroll speed by UI scale 6 years ago
Niels Martin Hansen 62dec9f174 Fix: Scale all min size and padding by UI scale 6 years ago
Niels Martin Hansen dd35a43703 Codechange: Revert unnecessary indentation change 6 years ago
Niels Martin Hansen a64bd6e22c Fix: Also breaking for warning text in set company password 6 years ago
Niels Martin Hansen 08284e005d Fix: Automatic line breaking of the warning 6 years ago
Niels Martin Hansen dcb2571888 Add: Warn players that company passwords are not truly secure 6 years ago
peter1138 66cd32a252 Codechange: Use std::underlying_type for DECLARE_POSTFIX_INCREMENT. 6 years ago
peter1138 ac1e1a272f Fix: Replace int with std::underlying_type in DECLARE_ENUM_AS_BIT_SET.
This fixes 64 bit uses of this macro.
6 years ago
PeterN c17736b493
Fix e8d397e: Invisible station/waypoint signs could still be clicked on. (#7531) 6 years ago
PeterN be073b46da
Fix: Bounds check access to railtype_map. (#7529) 6 years ago
PeterN d2b6176cdf
Add: NewGRF string codes to access PUSH/POP_COLOUR. (#7527) 6 years ago
glx22 66a8db9dc5
Fix #7526, 5b77102b6: FiosItem::operator< must return false for equality (#7528) 6 years ago
glx ebd4f32d15 Cleanup: remove core/sort_func.hpp as it's not used anymore 6 years ago
glx 48f99fd980 Codechange: use std::array for _sorted_industry_types 6 years ago
glx 60da17418a Codechange: use std::sort in SaveHighScoreValueNetwork() 6 years ago
glx 9388fa2aa1 Codechange: use std::vector to sort _all_grfs linked list 6 years ago
glx 8899272614 Codechange: use std::vector for _language_dropdown 6 years ago
glx 9195f2337a Codechange: use std::vector for _resolutions 6 years ago
glx 25e534f3cf Codechange: use std::vector for _sorted_railtypes 6 years ago
glx 0797de06be Codechange: use std::vector for _sorted_cargo_specs 6 years ago
translators f0b3267615 Update: Translations from eints
indonesian: 9 changes by fanioz
6 years ago
PeterN 671a310d21
Fix #7235: Ensure catchment area of neutral station covers entire industry. (#7518) 6 years ago
translators 8ae15d9797 Update: Translations from eints
indonesian: 6 changes by fanioz
6 years ago
Michael Lutz 38729297f9 Codechange: No need for AutoFreePtr if there's std::unique_ptr. 6 years ago
Michael Lutz 4e85ccf3c0 Codechange: Replace SmallStackSafeStackAlloc with std::array.
The only port that ever used it to make heap allocations instead of stack ones was the NDS port, which got thrown out some time ago.
6 years ago
stormcone 79343762a4 Fix: Typos. (#7517) 6 years ago
translators 3964604148 Update: Translations from eints
luxembourgish: 1 change by Phreeze
6 years ago
peter1138 4f052fc2a4 Cleanup: Fix alignment after NULL -> nullptr change. 6 years ago
glx 410b81537c Fix 801cbea9c: operator< is not always the best idea
Also removes unused and anyway broken SmallMap::SortByKey() function.
6 years ago
PeterN 3bbd7ea2c1
Fix: Industry coverage area is no longer rectangular. (#7464)
AIs test station catchment in reverse to how players see station catchment.
This did not take account of non-rectangular station catchment areas, so AIs
could end up placing stations in locations that did not accept/deliver cargo.
6 years ago
PeterN abe8cf4985
Codechange: Replace duplicated code with TileArea::Expand() (#7467) 6 years ago
glx 801cbea9cc Codechange: use std::sort() for all std::vector types 6 years ago
glx 5b77102b63 Codechange: use std::sort() to sort file lists 6 years ago
glx b52561fd38 Codechange: use std::sort() in EngList_Sort[Partial]() 6 years ago
glx 2db88953e7 Codechange: use std::sort() in GUIList 6 years ago
PeterN b9b34f676b
Change: Always report error when ordering a road vehicle to wrong type of road stop. (#7316)
This was inconsistent before, depending on road/tram and articulated/single vehicle status.
6 years ago
peter1138 5bd2b15e86 Codechange: Replace NULL with nullptr in squirrel interface. 6 years ago
peter1138 c0836bccef Codechange: NULL -> nullptr in settings files. 6 years ago
peter1138 0130f3be45 Fix #7491: Send company update admin message when bankruptcy counter changes. 6 years ago
SamuXarick 4ad981a98e Fix 50e08f333a: Creating a cargo subsidy with town as source did not consider min population. (#7493) 6 years ago
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 6 years ago
glx22 3b4f224c0b
Fix #7494: std::sort() and qsort() use different comparators (#7495) 6 years ago
translators 87d588f22f Update: Translations from eints
luxembourgish: 17 changes by Phreeze
spanish (mexican): 2 changes by njn
6 years ago
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
6 years ago
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.
6 years ago
Michael Lutz e804173595 Codechange: If something is a vector of strings, use a vector of strings instead of an AutoFreeSmallVector. 6 years ago
Michael Lutz c7b9987d08 Codechange: Switch DropDownList to directly use std::vector, thus making AutoDeleteSmallVector obsolete.
DropDownListItem are strongly managed using std::unique_ptr to ensure leak-free handling. Appropriate use
of move-semantics make intent a lot clearer than parameter comments and allows the compiler to generate
copy-free code for most situations.
6 years ago
Michael Lutz d3e113eb5f Codechange: Use std::vector instead of AutoDeleteSmallVector in GS text handling. 6 years ago
Michael Lutz baf9229931 Codechange: Replace AutoDeleteSmallVector with direct std::vector use in text layout code. 6 years ago
Michael Lutz 329bb52613 Codechange: Store text layout runs directly as values in a std::vector instead of heap allocated.
This reduces memory allocations and heap fragmentation.
6 years ago
Michael Lutz 9325d63d8e Fix: Forgotten override keywords for DropDownListIconItem. 6 years ago
Michael Lutz fbc4cef180 Codechange: Use override specifier for text layout classes. 6 years ago
Michael Lutz d95c7083ea Fix: Don't crash if reading a GS string file from disk produces an error.
The raw_strings vector may not include NULLs as no consumer can deal with it.
6 years ago
translators 0a883afe19 Update: Translations from eints
luxembourgish: 20 changes by Phreeze
6 years ago
PeterN 812886ca61
Fix #7478: Don't remove NewGRF objects on company take-over. (#7483) 6 years ago
kiwitreekor bc9b47d2e5 Fix #6222: Advanced sprite layout sometimes showed incorrect railtype ground tile 6 years ago
glx22 3e608afa6c
Fix: [Windows] OpenTTD window may be inactive when an error happens (#7482) 6 years ago
Michael Lutz 967b27a2c1 Codechange: C++11 STL has a function for getting the number of CPU cores. 6 years ago
Michael Lutz ae748166d0 Codechange: Use platform independent C++11 function for sleeping on a thread. 6 years ago
Michael Lutz 94c5269fa7 Codechange: Use atomic variables for thread synchronization where useful. 6 years ago
Michael Lutz 05bc2ed7cb Codechange: Replace custom thread code with C++11 thread objects.
We assume a conforming C++11 compiler environment that has a valid <thread>-header.
Failure to run a real thread is handled gracefully.
6 years ago
Michael Lutz 05f4e73608 Codechange: Replace custom mutex code with C++11 mutex'es.
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.
6 years ago
glx22 a1e492d0d8
Fix #7439: don't overwrite CompanyRemoveReason with ClientID (#7465) 6 years ago
Samu fb6e31ca43 Cleanup 3f32711: Don't apply forbid 90 deg turn settings for ships. 6 years ago
peter1138 8114bad033 Fix #7469: Desync when using build and refit feature. 6 years ago
translators 24fc25164a Update: Translations from eints
french: 3 changes by glx
croatian: 17 changes by VoyagerOne
6 years ago