Commit Graph

25378 Commits

Author SHA1 Message Date
glx22 34215f7faa Codechange: Replace FOR_ALL_TARS with range-based for loops 2021-05-03 19:46:57 +02:00
rubidium42 7bcc472f73 Add: [Network] Reading std::string from a packet 2021-05-03 17:56:05 +02:00
rubidium42 ba409e8c45 Add: [Network] Writing std::string to a packet 2021-05-03 17:56:05 +02:00
translators 8228021afe Update: Translations from eints
norwegian (bokmal): 1 change by Anolitt
spanish (mexican): 1 change by absay
korean: 1 change by telk5093
russian: 48 changes by Ln-Wolf
catalan: 1 change by J0anJosep
portuguese: 1 change by azulcosta
portuguese (brazilian): 1 change by Vimerum
2021-05-03 15:50:01 +00:00
rubidium42 6bd7f8816d
Fix #9117, 04ce1f07: [Fluidsynth] Infinite wait when stopping song (#9181)
In FluidSynth 2.2.0 an extra state was added to denote stopping. To transition
from this state to a stopped state the rendering needs to be running. Since
04ce1f07 locking was added that skipped the rendering when something else held
a lock, so the state would never get to stopped and join would never return.
2021-05-03 16:40:19 +01:00
PeterN 08781d96ed
Fix: Query windows may be partially drawn initially. (#9184)
Query window was not marked dirty after being moved on init. It was then marked dirty once the white border flash completed.
2021-05-03 16:39:20 +01:00
PeterN 0bc6f32346
Fix #9174: Don't update text effect if it has been reset. (#9183) 2021-05-03 15:12:47 +01:00
Jonathan G Rennison ece9a356dc
Fix #9113: Assertion failure when removing airport with order backup (#9182) 2021-05-03 15:03:25 +01:00
translators 1a1def99dc Update: Translations from eints
norwegian (bokmal): 24 changes by Anolitt
russian: 8 changes by Ln-Wolf
dutch: 46 changes by Afoklala
spanish: 43 changes by MontyMontana
french: 44 changes by arikover
2021-05-02 18:15:54 +00:00
Milek7 20762f9117
Codechange: Acquire video buffer before taking game state lock to prevent erratic fast forward behaviour (#9140) 2021-05-02 19:10:07 +01:00
Peter Nelson 756034fa27 Codechange: Validate custom station platform layout tiles are permitted values only. 2021-05-02 17:15:27 +01:00
Peter Nelson a3e49178d1 Codechange: Use std::vector for NewGRF station tile sprite layouts. 2021-05-02 17:15:27 +01:00
Peter Nelson bd1a20f6ee Codechange: Use std::vector for NewGRF station platform layouts.
This avoids the need to custom memory management and additional members.

This also resolves use-after-free if modifying copied layouts, so presumably nobody has ever done that.
2021-05-02 17:15:27 +01:00
Michael Lutz 1f159f79de Fix #9147: Delay making screenshots until the next draw tick as we may not access the video buffer from the game thread. 2021-05-02 17:57:24 +02:00
Michael Lutz 91b8ce073f Codechange: Generalise the delayed blitter change to a generic video driver command queue. 2021-05-02 17:57:24 +02:00
frosch 2cf5df2a50 Fix: [NewGRF] industry variable 66 and object variable 46 clamped the squared-euclidian distance to 16 bit, when they should not. 2021-05-02 13:45:43 +01:00
frosch 84aa17cea6 Fix: [NewGRF] industry variables 65 and 66 ignored the parameter, and always used the north tile. 2021-05-02 13:45:43 +01:00
rubidium42 56aa6d0edd Fix: [Network] Reading beyond the length of the server's ID when hashing password
Under normal circumstances the server's ID is 32 characters excluding '\0', however this can be changed at the server. This ID is sent to the server for company name hashing. The client reads it into a statically allocated buffer of 33 bytes, but fills only the bytes it received from the server. However, the hash assumes all 33 bytes are set, thus potentially reading uninitialized data, or a part of the server ID of a previous game in the hashing routine.
It is still reading from memory assigned to the server ID, so nothing bad happens, except that company passwords might not work correctly.
2021-05-02 11:51:28 +02:00
PeterN 18651dd8b1
Fix: Update text effect size when font zoom is changed. (#9174) 2021-05-02 10:43:14 +01:00
PeterN 256dbee255
Fix: Crash when extra viewport height is zero with sign in view. (#9175)
If a viewport sign straddles the top of a viewport, a crash will occur if the viewport height is zero. This is resolved by simply not attempting to draw the viewport in this situation, consistent with other widgets.
2021-05-02 10:21:27 +01:00
Peter Nelson 18fb1c3866 Codechange: Warn if randomaction2 group count is not a power of 2.
Previously noted by a comment, this does not need to be guarded against as non-powers of 2 will not cause issues beyond the choice of results being reduced.
2021-05-02 09:41:01 +01:00
Peter Nelson 6b0b1bb3de Cleanup: Use range iterator to evaluate DeterministicSpriteGroup. 2021-05-02 09:41:01 +01:00
Peter Nelson 913d8a7f28 Cleanup: Use std::vector in RandomSpriteGroup. 2021-05-02 09:41:01 +01:00
Peter Nelson 1aeaf39954 Cleanup: Use std::vector in DeterministicSpriteGroup. 2021-05-02 09:41:01 +01:00
Peter Nelson f785a70a2b Cleanup: Use std::vector in RealSpriteGroup. 2021-05-02 09:41:01 +01:00
rubidium42 e097c83c83 Codechange: move some OS abstraction method implementations out of the header 2021-05-01 19:36:22 +02:00
rubidium42 22720332eb Codechange: encapsulate network error handling 2021-05-01 19:36:22 +02:00
rubidium42 0eb17a70af Codechange: rename NetworkError to ShowNetworkError 2021-05-01 19:36:22 +02:00
Matt Kimber 67063ceeb3
Fix 3d7ab09: stopped trains not updating viewport hash when reversed for a second time (#9165) 2021-05-01 18:15:22 +01:00
Matt Kimber 520595ff87
Fix 3d7ab09: stopped trains not updating viewport hash when reversed for a second time (#9165) 2021-05-01 18:14:50 +01:00
rubidium42 05394d5216 Fix #6598: Prevent invalid memory accesses when abandoning a join from within a network game
One could join a network game from within an already running network game. This would call a NetworkDisconnect, but keeps the UI alive. If, during that process the join is aborted, e.g. by cancelling on a password dialog, you would still be in your network game but also get shown the server list.
Solve all the underlying problems by falling back to the main UI when (re)connecting to a(nother) server.
2021-05-01 18:30:08 +02:00
rubidium42 83985fe26f Codechange: Move join information into a single structure 2021-05-01 18:30:08 +02:00
rubidium42 39c51c35f4 Fix #6598: Do not disconnect before company number validation
NetworkClientConnectGame already does a NetworkDisconnect, so no reason to do it here
2021-05-01 18:30:08 +02:00
rubidium42 3bd416bfdb Change: [Console] Show help when passing invalid company number 2021-05-01 18:30:08 +02:00
Loïc Guilloux 376f2509ad
Fix: Don't consider regression AIs when starting a random AI (#9164) 2021-05-01 16:19:14 +02:00
Loïc Guilloux 282d5d302d
Change: [Actions] Add a 2 minutes timeout for regression test (#9166) 2021-05-01 16:18:41 +02:00
rubidium42 0345f99180 Feature: make the town directory horizontally resizable 2021-05-01 13:30:27 +02:00
Loïc Guilloux 2985277bec
Fix d4f0b6f4: [CMake] CMAKE_PROJECT_VERSION_XXX are not in CMake 3.9 (#9154) 2021-05-01 11:11:07 +01:00
rubidium42 40528db993 Fix #9152, Fix #9153: screenshot command showed error messages when successful 2021-05-01 11:54:41 +02:00
Peter Nelson 9c6c0a0966 Codechange: Scale sprite font height once on init instead of every call to GetHeight().
Scaling is not expensive, but it does not change either, and this avoids the need for a virtual method call. This cascades back to all GetCharacterHeight(FS_xxx) and FONT_HEIGHT_xxx calls.
2021-05-01 10:41:39 +01:00
Peter Nelson ce55cd0ce7 Cleanup: Use GetDefaultFontHeight() call instead of direct access.
This makes this part of font size setup in FreeTypeFontCache consist with OSX and Windows variants.
2021-05-01 10:41:39 +01:00
Peter Nelson 49aa392440 Fix: Cargo legend blob in cargo payment rate window did not rescale. 2021-04-30 17:08:15 +01:00
Peter Nelson 055067c49c Fix: Scale cargo lines in industry chain window.
Replaces constant pixel values with values scaled based on font size.
This allows the industry chain to maintain a consistent look across
different sizes. Previously all except cargo line height were fixed.
2021-04-30 17:08:15 +01:00
Peter Nelson 254ffe9dcc Fix: Scale industry chain legend blob by font size. 2021-04-30 17:08:15 +01:00
Peter Nelson 957beaaefc Fix: Improved scaling and spacing of sign list window.
Both company icon sprite and text now centred within each row, and extra
padding added to avoid the sprites running into each other.
2021-04-30 17:08:15 +01:00
Peter Nelson 617e85cc65 Fix: Scale legend blobs in Fund new industry window. 2021-04-30 17:08:15 +01:00
Peter Nelson 5434d63f91 Fix: Scale smallmap legend 'blob' to fit text. 2021-04-30 17:08:15 +01:00
Peter Nelson af70195e44 Fix: Tidy up sizing of sprite aligner window sprite list. 2021-04-30 17:08:15 +01:00
Peter Nelson 1df510c297 Fix: Company Key window scaling. 2021-04-30 17:08:15 +01:00
Peter Nelson 09206be054 Fix: Use unscaled values for padding OSK 2021-04-30 17:08:15 +01:00