Commit Graph

17406 Commits

Author SHA1 Message Date
Niels Martin Hansen
a0c78c73e3 Fix: Correctly reset playback between songs in win32_m driver 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
27b7c5a5fd Fix: Correctly reset playback between songs in DMusic driver 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
a4cf1c8aec Fix: Don't keep mutex locked while parsing MIDI data 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
9839ce006c Fix: Time values should be DWORD everywhere in win32_m 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
f8633fc63b Codechange: Fix comment indentation 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
27384486e4 Codechange: Use common source for well-known SysEx messages in Windows music drivers 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
9d8a83bf8d Codechange: Add some const in preparation 2019-07-04 22:27:34 +02:00
Niels Martin Hansen
c74df8581d Codechange: Use std::mutex instead of CRITICAL_SECTION in win32_m 2019-07-04 22:27:34 +02:00
translators
2e23c5ec15 Update: Translations from eints
korean: 1 change by telk5093
2019-07-02 19:45:45 +02:00
peter1138
0db31ae27f Change: Avoid caching end of ship path, to allow penalties to apply. 2019-06-30 16:46:32 +02:00
peter1138
31db4f8d5e Add: Penalty for occupied docking points. 2019-06-30 16:46:32 +02:00
peter1138
ec2656ab7e Codechange: Restrict docking points of docks. 2019-06-30 16:46:32 +02:00
peter1138
f538179878 Feature: Multi-tile docks and docking points. 2019-06-30 16:46:32 +02:00
translators
f1c3915341 Update: Translations from eints
norwegian (bokmal): 25 changes by Leifbk
2019-06-25 19:45:45 +02:00
translators
ac610c50a9 Update: Translations from eints
italian: 38 changes by lorenzodv
2019-06-23 19:45:43 +02:00
translators
b878891289 Update: Translations from eints
english (us): 38 changes by njn
2019-06-17 19:45:45 +02:00
translators
7ad9971cf0 Update: Translations from eints
croatian: 3 changes by VoyagerOne
2019-06-15 19:45:43 +02:00
translators
7f7aba9389 Update: Translations from eints
hungarian: 3 changes by Brumi
2019-06-14 19:45:44 +02:00
translators
00000ef8fa Update: Translations from eints
korean: 3 changes by telk5093
2019-06-12 19:45:44 +02:00
translators
0518ed01b6 Update: Translations from eints
czech: 48 changes by djst
russian: 3 changes by Lone_Wolf
2019-06-11 19:45:43 +02:00
translators
45511080b1 Update: Translations from eints
finnish: 3 changes by hpiirai
dutch: 3 changes by JanWillem
bulgarian: 54 changes by zhelyo
french: 3 changes by glx
2019-06-10 19:45:42 +02:00
iigmir
5b09323a58 Add: Currency: NTD, CNY, HKD 2019-06-09 11:13:30 +02:00
stormcone
6396ec05fe Fix #7609: In the sprite aligner window the 'Reset relative' button crashes the game.
The 'offs_start_map' is a 'SmallMap', so its own 'Erase' function should be called instead of the underlying vector's 'erase' function.
And fix a "typo". :)
2019-06-06 17:28:39 +01:00
glx22
846fc8fe09
Fix: vcpkg used to patch lzma.h to define LZMA_API_STATIC for static builds (#7614) 2019-06-03 00:18:28 +02:00
translators
ef74af6766 Update: Translations from eints
finnish: 32 changes by hpiirai
spanish (mexican): 16 changes by Absay
2019-05-25 19:45:42 +02:00
translators
aee3e4e496 Update: Translations from eints
hungarian: 7 changes by Brumi
2019-05-23 19:45:44 +02:00
Michael Lutz
b73622a01c Fix #7600: Don't read uninitialised memory when parsing GS language files. 2019-05-23 00:08:39 +02:00
translators
c1d26d8884 Update: Translations from eints
croatian: 7 changes by VoyagerOne
2019-05-19 19:45:45 +02:00
Jonathan G Rennison
b9eb9a4af9 Fix #7594: Max speed rendered incorrectly in road vehicle purchase window when using original acceleration model (#7597)
An incorrect DParam index was used.
2019-05-18 19:31:00 +02:00
translators
24493548da Update: Translations from eints
french: 7 changes by glx
korean: 8 changes by telk5093
2019-05-16 19:45:43 +02:00
glx
09004f3697 Codechange: catch script exceptions by reference 2019-05-15 21:59:57 +02:00
glx
a82e7ec281 Fix #7590: handle script exceptions during scanning 2019-05-15 21:59:57 +02:00
glx
aac4255d43 Fix #7590: decrement allocated_size in ScriptAllocator::Free() 2019-05-15 21:59:57 +02:00
Michael Lutz
de73c8f91c Codechange: [Win32] Remove a FreeType work-around from Uniscribe if not using FreeType. 2019-05-14 11:21:36 +01:00
Michael Lutz
eeccfa2570 Add: [Win32] Support for loading fonts from a file for the GDI font renderer. 2019-05-14 11:21:36 +01:00
Michael Lutz
d2ed426077 Codechange: [Win32] Pass a native GDI font description around when we have one, instead of repeatedly guessing the font. 2019-05-14 11:21:36 +01:00
Michael Lutz
2675762ae9 Add: [Win32] GDI engine for font glyph rendering as a replacement for including FreeType.
Building with FreeType is still possible and will take precedence over the GDI renderer, but
the project files don't include FreeType anymore by default. Combining GDI rendering with ICU
text layout is untested.
2019-05-14 11:21:36 +01:00
Michael Lutz
a8b6e9f23c Codechange: Refactor the Freetype font cache into a generic part that does not depend on Freetype and into one that does.
This makes it easier to add other TrueType font rendering engines.
2019-05-14 11:21:36 +01:00
translators
f8fb9fda6b Update: Translations from eints
russian: 7 changes by Lone_Wolf
2019-05-13 19:45:45 +02:00
PeterN
2d0352d67f
Fix e8d397e4ee: Avoid using RemapCoords2 during savegame conversion. (#7588) 2019-05-13 12:27:35 +01:00
translators
38bb6b7d1b Update: Translations from eints
dutch: 7 changes by JanWillem
2019-05-11 19:45:44 +02:00
Niels Martin Hansen
e7f6f07599 Add: Show memory allocations by GS and AI in framerate window 2019-05-11 15:34:33 +02:00
Niels Martin Hansen
140a96b3a0 Change: Limit memory allocations for each Squirrel instance
This can avoid out-of-memory situations due to single scripts using up the entire address space.
Instead, scripts that go above the maximum are killed.
The maximum is default 1 GB per script, but can be configured by a setting.
2019-05-11 15:34:33 +02:00
Niels Martin Hansen
c9fe6e7b8f Fix #7371: Avoid dependency on foundations of town tile during saveload 2019-05-11 14:58:00 +02:00
Michael Lutz
0344e7a0a1 Fix #7463: Promote scroll mode setting to basic category. 2019-05-11 14:05:52 +02:00
PeterN
83c1678f9e
Fix #7577: Check if linkgraph station index is valid before dereferencing. (#7583) 2019-05-10 21:36:03 +01:00
PeterN
f4921d2c3e
Fix #7576: Crash when destroying rail/tram crossing. (#7579) 2019-05-10 21:07:38 +01:00
stormcone
24c59283ec Fix #7224: Drag and drop vehicle group creation does not work correctly.
When drag and drop a vehicle into an empty slot in the vehicle group window it tries to create the new group as the subgroup of the first group (GroupID = 0). This is failing if the dragged vehicle's type is different than the first group's vehicle type.
2019-05-10 19:49:51 +02:00
translators
7a0e2923e5 Update: Translations from eints
norwegian (bokmal): 28 changes by Leifbk
russian: 17 changes by Lone_Wolf
korean: 14 changes by telk5093
2019-05-10 19:45:45 +02:00
glx22
47fdbdd324
Fix: ignore C++ standard library headers in depend (#7578) 2019-05-10 14:22:07 +02:00
translators
be53ef24c1 Update: Translations from eints
ukrainian: 11 changes by odisseus
2019-05-09 19:45:46 +02:00
peter1138
51dd751f4a Fix #7565: Incorrect cursor used for placing road/tram tunnels. 2019-05-09 11:51:04 +01:00
translators
652268ad1a Update: Translations from eints
swedish: 31 changes by Joel_A
dutch: 2 changes by JanWillem
hungarian: 25 changes by Brumi
2019-05-07 19:45:45 +02:00
translators
d04383ccf0 Update: Translations from eints
croatian: 25 changes by VoyagerOne
2019-05-05 19:45:41 +02:00
Corns McGowan
4d0ee65b51 Change: Set default setting in server browser of "Advertised" to "Yes". (#7568) 2019-05-05 15:18:52 +01:00
peter1138
a1de834104 Cleanup: Remove unused string. 2019-05-04 22:39:29 +01:00
peter1138
402e18b460 Change: Allow building road stops over self-owned one-way/blocked road. 2019-05-04 22:39:29 +01:00
Transportman
7ef2f11c4c Fix #7570: Show Github URL in the crashlog window 2019-05-04 19:54:32 +01:00
peter1138
1fe580cd2b Fix c02ef3e456: Incorrect order of road toolbar icons. 2019-05-04 19:51:38 +01:00
glx
26aa3b8623 Remove: grow() helper function 2019-05-04 19:50:53 +01:00
glx
9184a62958 Codechange: replace grow() usage for MidiFile 2019-05-04 19:50:53 +01:00
glx
212140b88b Codechange: replace grow() usage in ClientNetworkContentSocketHandler::OnReceiveData() 2019-05-04 19:50:53 +01:00
glx
d0d4fc73a7 Codechange: replace grow() usage in AllocateSound() 2019-05-04 19:50:53 +01:00
translators
6b49205745 Update: Translations from eints
spanish (mexican): 16 changes by Absay
russian: 18 changes by Lone_Wolf
2019-05-04 19:45:44 +02:00
glx
515202da7b Fix 6f33cfd05: incorrect {G} usage in korean translation 2019-05-03 21:49:40 +02:00
translators
6f33cfd059 Update: Translations from eints
korean: 536 changes by telk5093
2019-05-03 19:45:46 +02:00
Niels Martin Hansen
d1ef13fc04 Fix #7481: Just remove oil rig stations right away, don't clean them first 2019-05-03 09:50:01 +02:00
peter1138
82989ef076 Fix: Clicking on scrollbar 'thumb' moved position up instantly. 2019-05-02 22:16:26 +01:00
translators
3469a2a445 Update: Translations from eints
dutch: 27 changes by JanWillem
french: 29 changes by glx
hungarian: 3 changes by Brumi
korean: 71 changes by telk5093
2019-05-02 19:45:47 +02:00
peter1138
672c857e37 Cleanup: Update modified and removed strings in language files. 2019-05-01 21:36:27 +02:00
peter1138
3293f08e0b Add: New RoadType API functions. 2019-05-01 21:36:27 +02:00
peter1138
c02ef3e456 Feature: Add NotRoadTypes (NRT) 2019-05-01 21:36:27 +02:00
Peter Nelson
21edf67f89 Codechange: Untangle game and scenario toolbars. 2019-05-01 21:36:27 +02:00
peter1138
08f00151f1 Codechange: MakeBridgeRamp()'s road-or-rail-type parameter does not make sense.
Road type and rail type are stored in separate locations, so this parameter does
not make make sense as it is only used for rail bridges. Instead explicitly set the
rail type in MakeRailBridgeRamp().
2019-05-01 21:36:27 +02:00
peter1138
bcdb28249c Codechange: Use RAILTYPES_NONE instead of INVALID_RAILTYPES when not using rail.
INVALID_RAILTYPES, if it was accidentally tested, would match any railtype.
2019-05-01 21:36:27 +02:00
Berbe
04c74355ba Fix: IniLoadFile::LoadFromDisk expects filename but BaseMedia::AddFile provided full path (#7348) 2019-05-01 18:57:23 +01:00
glx22
76788a1eb3
Fix 2bb80d2: really increase the maximum number of GameScript texts to 64k (#7555) 2019-05-01 19:31:30 +02:00
glx22
cef9a76c3f
Fix #7553: check bounds when loading strings (#7554) 2019-05-01 19:12:37 +02:00
kiwitree
28b23a6643 Fix: Crash on waypoint selection window 2019-04-30 20:20:14 +01:00
PeterN
14dc8dd619
Fix 81d335b: Don't check state of widget not present in scenario editor. (#7551) 2019-04-29 19:09:11 +01:00
pnda
8cc6ee60ed Add: Icons on air/water/landscape construction menus (#7485) 2019-04-29 18:42:00 +01:00
Charles Pigott
63a7df027d Fix 5db883f: Railtype bits were moved too late, leading to rails under bridges losing their type 2019-04-29 17:46:28 +01:00
Charles Pigott
d9f9a64389 Fix #6507: Don't try to load invalid depots from older savegames 2019-04-29 17:46:28 +01:00
Charles Pigott
3299d6540b Cleanup: Delete GetSavegameType function since it's been commented out since 2005 2019-04-29 17:46:28 +01:00
Charles Pigott
9da1c5bb0b Fix: Crash when attempting to load old save game with GRFs set
GroupStatistics pool was not initialised before trying to delete vehicles (specifically, trams with no tram track)
2019-04-29 17:46:28 +01:00
Charles Pigott
47d0d86a3c Fix #7255: Prevent crashlog corruption by only printing the 32 most recent news messages 2019-04-29 17:43:27 +01:00
Charles Pigott
9e19a5f93e Remove: (Simple)TinyEnumT 2019-04-29 17:40:22 +01:00
Charles Pigott
bd87f11355 Codechange: Remove DistributionTypeByte 2019-04-29 17:40:22 +01:00
Charles Pigott
a5681d3eba Codechange: Remove GoalTypeByte 2019-04-29 17:40:22 +01:00
Charles Pigott
327ff89808 Codechange: Remove PauseModeByte 2019-04-29 17:40:22 +01:00
Charles Pigott
e18c8c30be Codechange: Remove RoadTypesByte 2019-04-29 17:40:22 +01:00
Charles Pigott
644f4c3547 Codechange: Set size of SettingGuiFlag & SettingDescType enums, and use them properly 2019-04-29 17:40:22 +01:00
Charles Pigott
0a53ee8cfe Codechange: Remove PartOfSubsidyByte 2019-04-29 17:40:22 +01:00
Charles Pigott
5d66d8fd7d Codechange: Remove ExpensesTypeByte 2019-04-29 17:40:22 +01:00
Charles Pigott
2e1936da64 Codechange: Remove SourceTypeByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
5b34c8019f Codechange: Remove Company/OwnerByte types 2019-04-29 17:40:22 +01:00
Charles Pigott
fcf06ba4c4 Codechange: Remove StationClassIDByte, and drop STAT_CLASS_MAX by one 2019-04-29 17:40:22 +01:00
Charles Pigott
60e31c7cfa Codechange: Remove OrderTypeByte 2019-04-29 17:40:22 +01:00
Charles Pigott
96097b34a5 Codechange: Remove Direction*Byte types 2019-04-29 17:40:22 +01:00
Charles Pigott
9f3928658b Codechange: Remove Track{dir,}{Bits,}Byte types 2019-04-29 17:40:22 +01:00
Charles Pigott
931d32f414 Codechange: Remove RailTypeByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
10ba431d21 Codechange: Remove SpriteTypeByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
119ea7a195 Codechange: Remove StationHadVehicleOfTypeByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
fb6ae81415 Codechange: Remove StationFacilityByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
09567bf0b3 Codechange: Remove StoryPageElementTypeByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
f20b75d712 Codechange: Remove TownLayoutByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
0e439aeab7 Codechange: Remove TownFoundingByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
0a57db01af Codechange: Remove TrainForceProceedingByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
69a6c494bf Codechange: Set VehicleType's base type to byte instead of using VehicleTypeByte 2019-04-29 17:40:22 +01:00
Charles Pigott
96a4787710 Codechange: Set ZoomLevel's base type to byte instead of using ZoomLevelByte 2019-04-29 17:40:22 +01:00
translators
aa220b2375 Update: Translations from eints
indonesian: 2 changes by fanioz
dutch: 3 changes by JanWillem
korean: 3 changes by telk5093
2019-04-28 19:45:44 +02:00
PeterN
0ab6244f6b
Fix #7165: Missed another 'Append() --> push_back()' replacement (#7548) 2019-04-27 20:47:32 +01:00
translators
ead5b55119 Update: Translations from eints
spanish (mexican): 3 changes by Absay
russian: 3 changes by Lone_Wolf
2019-04-27 19:45:42 +02:00
peter1138
b454ca7110 Fix 81d335b: Coverage button missing from town window in scenario editor. 2019-04-27 14:41:58 +01:00
translators
f354b869c1 Update: Translations from eints
indonesian: 3 changes by fanioz
croatian: 3 changes by VoyagerOne
2019-04-26 19:45:41 +02:00
translators
5b0ce8c214 Update: Translations from eints
finnish: 3 changes by hpiirai
italian: 3 changes by lorenzodv
2019-04-25 19:45:45 +02:00
Niels Martin Hansen
d5841109f0 Fix dcb2571: Missing override keywords 2019-04-25 17:45:00 +02:00
peter1138
81d335b081 Feature: Add station coverage area display for towns. 2019-04-25 09:14:01 +02:00
peter1138
81f0f97406 Feature: Add existing station coverage area display when placing new station parts. 2019-04-25 09:14:01 +02:00
peter1138
b6733edd17 Feature: Add coverage area display for existing stations. 2019-04-25 09:14:01 +02:00
Niels Martin Hansen
37daf43037 Change: Zoom title game by UI zoom level 2019-04-24 23:04:55 +02:00
Niels Martin Hansen
58609e8fa6 Fix: Manager name in company news was being clipped 2019-04-24 23:04:55 +02:00
Niels Martin Hansen
2c67af391b Fix: Scale news ticker scroll speed by UI scale 2019-04-24 23:04:55 +02:00
Niels Martin Hansen
62dec9f174 Fix: Scale all min size and padding by UI scale 2019-04-24 23:04:55 +02:00
Niels Martin Hansen
dd35a43703 Codechange: Revert unnecessary indentation change 2019-04-24 17:40:11 +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
08284e005d Fix: Automatic line breaking of the warning 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
peter1138
66cd32a252 Codechange: Use std::underlying_type for DECLARE_POSTFIX_INCREMENT. 2019-04-21 22:31:12 +01:00
peter1138
ac1e1a272f Fix: Replace int with std::underlying_type in DECLARE_ENUM_AS_BIT_SET.
This fixes 64 bit uses of this macro.
2019-04-21 22:31:12 +01:00
PeterN
c17736b493
Fix e8d397e: Invisible station/waypoint signs could still be clicked on. (#7531) 2019-04-20 17:49:54 +01:00
PeterN
be073b46da
Fix: Bounds check access to railtype_map. (#7529) 2019-04-20 02:34:25 +01:00
PeterN
d2b6176cdf
Add: NewGRF string codes to access PUSH/POP_COLOUR. (#7527) 2019-04-20 02:21:25 +01:00
glx22
66a8db9dc5
Fix #7526, 5b77102b6: FiosItem::operator< must return false for equality (#7528) 2019-04-19 18:48:01 +02:00
glx
ebd4f32d15 Cleanup: remove core/sort_func.hpp as it's not used anymore 2019-04-18 21:49:34 +02:00
glx
48f99fd980 Codechange: use std::array for _sorted_industry_types 2019-04-18 21:49:34 +02:00
glx
60da17418a Codechange: use std::sort in SaveHighScoreValueNetwork() 2019-04-18 21:49:34 +02:00
glx
9388fa2aa1 Codechange: use std::vector to sort _all_grfs linked list 2019-04-18 21:49:34 +02:00
glx
8899272614 Codechange: use std::vector for _language_dropdown 2019-04-18 21:49:34 +02:00
glx
9195f2337a Codechange: use std::vector for _resolutions 2019-04-18 21:49:34 +02:00
glx
25e534f3cf Codechange: use std::vector for _sorted_railtypes 2019-04-18 21:49:34 +02:00
glx
0797de06be Codechange: use std::vector for _sorted_cargo_specs 2019-04-18 21:49:34 +02:00
translators
f0b3267615 Update: Translations from eints
indonesian: 9 changes by fanioz
2019-04-17 19:45:47 +02:00
PeterN
671a310d21
Fix #7235: Ensure catchment area of neutral station covers entire industry. (#7518) 2019-04-16 20:30:07 +01:00
translators
8ae15d9797 Update: Translations from eints
indonesian: 6 changes by fanioz
2019-04-16 19:45:42 +02:00
Michael Lutz
38729297f9 Codechange: No need for AutoFreePtr if there's std::unique_ptr. 2019-04-15 22:52:50 +01:00
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.
2019-04-15 22:52:50 +01:00
stormcone
79343762a4 Fix: Typos. (#7517) 2019-04-15 22:06:41 +02:00
translators
3964604148 Update: Translations from eints
luxembourgish: 1 change by Phreeze
2019-04-15 19:45:42 +02:00
peter1138
4f052fc2a4 Cleanup: Fix alignment after NULL -> nullptr change. 2019-04-13 20:35:10 +01:00
glx
410b81537c Fix 801cbea9c: operator< is not always the best idea
Also removes unused and anyway broken SmallMap::SortByKey() function.
2019-04-13 21:05:25 +02:00
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.
2019-04-13 14:27:57 +01:00
PeterN
abe8cf4985
Codechange: Replace duplicated code with TileArea::Expand() (#7467) 2019-04-13 14:12:34 +01:00
glx
801cbea9cc Codechange: use std::sort() for all std::vector types 2019-04-13 12:49:18 +01:00
glx
5b77102b63 Codechange: use std::sort() to sort file lists 2019-04-13 12:49:18 +01:00
glx
b52561fd38 Codechange: use std::sort() in EngList_Sort[Partial]() 2019-04-13 12:49:18 +01:00
glx
2db88953e7 Codechange: use std::sort() in GUIList 2019-04-13 12:49:18 +01:00
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.
2019-04-13 12:43:49 +01:00
peter1138
5bd2b15e86 Codechange: Replace NULL with nullptr in squirrel interface. 2019-04-11 22:42:11 +01:00
peter1138
c0836bccef Codechange: NULL -> nullptr in settings files. 2019-04-11 13:00:55 +01:00
peter1138
0130f3be45 Fix #7491: Send company update admin message when bankruptcy counter changes. 2019-04-11 13:00:25 +01:00
SamuXarick
4ad981a98e Fix 50e08f333a: Creating a cargo subsidy with town as source did not consider min population. (#7493) 2019-04-11 07:35:46 +01:00
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
glx22
3b4f224c0b
Fix #7494: std::sort() and qsort() use different comparators (#7495) 2019-04-10 20:55:53 +02:00
translators
87d588f22f Update: Translations from eints
luxembourgish: 17 changes by Phreeze
spanish (mexican): 2 changes by njn
2019-04-10 19:45:43 +02: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
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.
2019-04-09 22:45:15 +02:00
Michael Lutz
d3e113eb5f Codechange: Use std::vector instead of AutoDeleteSmallVector in GS text handling. 2019-04-09 22:45:15 +02:00
Michael Lutz
baf9229931 Codechange: Replace AutoDeleteSmallVector with direct std::vector use in text layout code. 2019-04-09 22:45:15 +02:00
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.
2019-04-09 22:45:15 +02:00
Michael Lutz
9325d63d8e Fix: Forgotten override keywords for DropDownListIconItem. 2019-04-09 22:45:15 +02:00
Michael Lutz
fbc4cef180 Codechange: Use override specifier for text layout classes. 2019-04-09 22:45:15 +02:00
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.
2019-04-09 22:45:15 +02:00
translators
0a883afe19 Update: Translations from eints
luxembourgish: 20 changes by Phreeze
2019-04-09 19:45:42 +02:00
PeterN
812886ca61
Fix #7478: Don't remove NewGRF objects on company take-over. (#7483) 2019-04-08 19:20:43 +01:00
kiwitreekor
bc9b47d2e5 Fix #6222: Advanced sprite layout sometimes showed incorrect railtype ground tile 2019-04-08 18:41:07 +01:00
glx22
3e608afa6c
Fix: [Windows] OpenTTD window may be inactive when an error happens (#7482) 2019-04-07 21:52:30 +02:00
Michael Lutz
967b27a2c1 Codechange: C++11 STL has a function for getting the number of CPU cores. 2019-04-06 11:27:39 +02:00
Michael Lutz
ae748166d0 Codechange: Use platform independent C++11 function for sleeping on a thread. 2019-04-06 11:27:39 +02:00
Michael Lutz
94c5269fa7 Codechange: Use atomic variables for thread synchronization where useful. 2019-04-06 11:27:39 +02:00
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.
2019-04-06 11:27:39 +02:00
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.
2019-04-06 11:27:39 +02:00
glx22
a1e492d0d8
Fix #7439: don't overwrite CompanyRemoveReason with ClientID (#7465) 2019-04-05 15:11:52 +02:00
Samu
fb6e31ca43 Cleanup 3f32711: Don't apply forbid 90 deg turn settings for ships. 2019-04-05 10:03:54 +01:00
peter1138
8114bad033 Fix #7469: Desync when using build and refit feature. 2019-04-04 23:29:43 +01:00
translators
24fc25164a Update: Translations from eints
french: 3 changes by glx
croatian: 17 changes by VoyagerOne
2019-04-02 19:45:45 +02:00
Niels Martin Hansen
cebdd72146 Fix #7440: Remove town sign when deleting town, not add it once more 2019-04-02 09:46:33 +02:00
translators
92d5835495 Update: Translations from eints
dutch: 2 changes by JanWillem
french: 19 changes by glx
2019-04-01 19:45:46 +02:00
translators
cb449049ff Update: Translations from eints
english (us): 3 changes by Supercheese
spanish (mexican): 18 changes by Absay
hungarian: 2 changes by Brumi
latin: 33 changes by Supercheese
2019-03-31 19:45:45 +02:00
peter1138
f0336f1f17 Codechange: Remove ship max order distance from script API. 2019-03-31 17:22:54 +01:00
peter1138
f656f5e8eb Change: Remove ship max order distance.
It is skipped when NPF is in use.
It is trivial to work around by adding and removing dummy orders.
It is mostly alleviated by the ship path cache in YAPF.
2019-03-31 17:22:54 +01:00
peter1138
66bed86bbb Fix #7062, Revert 7af53d7588: Don't test ship max order distance when pathfinding. 2019-03-31 17:22:54 +01:00
glx
d0e8060182 Fix 6fc60d8c4f: forgot to update API changelog 2019-03-31 03:33:03 +02:00
PeterN
6d1cc142c2
Change: Shorten engine rail type drop down in autoreplace window. (#7448)
In the autoreplace window, the rail type drop down is for choosing engines
of the given time. Many rail types do not have engines specifically designed for them,
and are merely compatible with other rail types. This list is thus unwieldy and many
options have no engines available.

As this drop down is for choosing _engine_ rail type rather than compatible rail types,
we can list just the rail types explicitly listed by engines.
2019-03-31 02:05:23 +01:00
PeterN
e1069eee05
Codechange: Check airport layout would fit within map bounds before iterating tiles. (#7429) 2019-03-30 22:20:26 +00:00
PeterN
32fda83d39
Fix aa7ca7fe6: Linkgraph node index order must be maintained due to other references. (#7431)
Linkgraph nodes require a specific order that was maintained by swapping just the last
element for the node to be removed. std::vector::erase() changed this to removing the
node is then shuffling the remain items down, which upsets other references to this
indices.

This is fixed by switching back to the original swap & pop method.
2019-03-30 22:19:50 +00:00
Andy
423aea5c32 Change: adjust Violet smallmap colour 1 shade darker, to compensate for legibility against darker blue of sea introduced by #7436 2019-03-30 22:57:07 +01:00
glx22
e93630541d
Fix #7433: don't use AirportSpec substitute if it's not set (#7435) 2019-03-30 22:12:25 +01:00