Ivan Savenko
7c221e2327
Merge pull request #3628 from IvanSavenko/fix_network_crash
...
Fix network crash
2024-02-19 15:51:35 +02:00
Ivan Savenko
779625415f
Guard against concurrent writes on same asio::socket instance
2024-02-19 13:47:06 +02:00
Ivan Savenko
f620a07389
Add protocol validation
2024-02-19 13:46:07 +02:00
Ivan Savenko
81e44711a2
Remove no longer needed workaround
2024-02-19 13:45:50 +02:00
Ivan Savenko
fe918de2df
Remove invalid assertion
2024-02-19 00:36:21 +02:00
Ivan Savenko
fc252bb9eb
Random town names are now guaranteed to be unique on the map
2024-02-19 00:36:08 +02:00
Ivan Savenko
10b35ceecb
Replaced assertions with exceptions for invalid input in RNG
2024-02-19 00:35:21 +02:00
Alexander Wilms
06a56a0ec3
Try to fix compilation error:
...
/home/runner/work/vcmi/vcmi/test/../Global.h:700:36: error: no matching function for call to 'max'
const Floating relativeEpsilon = std::max(std::abs(left), std::abs(right)) * epsilon;
^~~~~~~~
/home/runner/work/vcmi/vcmi/test/JsonComparer.cpp:48:16: note: in instantiation of function template specialization 'vstd::isAlmostEqual<double, int>' requested here
return vstd::isAlmostEqual(value.Float(), 0);
^
2024-02-18 23:32:12 +01:00
Alexander Wilms
fc1e9f70f9
Fix float comparison
2024-02-18 23:16:11 +01:00
Ivan Savenko
ef8ff00973
Unified common primitive-based UI elements
2024-02-18 22:15:31 +02:00
Ivan Savenko
14e3c762c0
Fix slot selection in markets
2024-02-18 21:18:55 +02:00
Ivan Savenko
8b60275a6e
Hero exchange in town is now activated by clicking on hero portrait
2024-02-18 21:02:24 +02:00
Ivan Savenko
af671d109f
Made graphical primitive-based UI more configurable
2024-02-18 20:48:45 +02:00
Ivan Savenko
c0dc1040c2
Fixes crash on attempt to dynamic_cast AbilityCaster to Unit
2024-02-18 20:06:07 +02:00
Ivan Savenko
868b41c8ee
Merge pull request #3615 from Alexander-Wilms/cmake-sdl2
...
Fix SDL2MAIN_LIBRARY CMake warning
2024-02-18 20:05:50 +02:00
Ivan Savenko
6329d54296
Merge pull request #3619 from Alexander-Wilms/sonarcloud-fixes
...
Fix float comparisons
2024-02-18 20:05:26 +02:00
Alexander Wilms
2ea78a5883
Fix float comparisons
...
Replace this "==" with a more tolerant comparison operation.
Floating point numbers should not be tested for equality cpp:S1244
2024-02-14 23:30:29 +01:00
Ivan Savenko
110ef5f66e
Merge pull request #3614 from IvanSavenko/sonarcloud_fixes_2
...
Sonarcloud fixes 2
2024-02-14 16:44:58 +02:00
Ivan Savenko
3ea29a9656
Merge pull request #3616 from IvanSavenko/json_split
...
Move & split files related to json
2024-02-14 16:40:03 +02:00
Ivan Savenko
3740f8b02f
Moved bonus parsing to a new file
2024-02-14 15:48:06 +02:00
Ivan Savenko
0b7bf56597
Remove old files
2024-02-14 14:02:41 +02:00
Ivan Savenko
c3957c2c2a
Moved json files to new directory, split on per-class basis
2024-02-14 13:08:24 +02:00
Ivan Savenko
c23953eac5
Remove custom casts
2024-02-14 12:56:37 +02:00
Ivan Savenko
0d74959a33
Better float comparison
2024-02-14 12:07:07 +02:00
Ivan Savenko
6d6137accc
Simplified code
2024-02-14 12:07:07 +02:00
Ivan Savenko
45c971a405
Replace throws() with nothrow
2024-02-14 12:07:07 +02:00
Ivan Savenko
7359b66f99
Do not use floating point equality checks
2024-02-14 12:07:07 +02:00
Ivan Savenko
9ebd194ab1
Merge pull request #3609 from IvanSavenko/single_process
...
Allow running server as part of client process
2024-02-14 12:06:22 +02:00
Alexander Wilms
a8f79ad9d8
Try to fix CMake warning:
...
-- Found SDL2: /usr/lib/x86_64-linux-gnu/libSDL2.so (found version "2.0.20")
CMake Warning (dev) at /usr/local/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
The package name passed to `find_package_handle_standard_args` (SDL2main)
does not match the name of the calling package (SDL2). This can lead to
problems in calling code that expects `find_package` result variables
(e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
cmake_modules/FindSDL2.cmake:318 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:473 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
2024-02-14 09:32:34 +01:00
Ivan Savenko
77e8d61755
Build lobby on Linux CI
2024-02-13 22:20:30 +02:00
Ivan Savenko
a9dc03e6e3
Merge pull request #3613 from Alexander-Wilms/redundant-override
...
Remove more redundant virtual specifiers
2024-02-13 18:03:19 +02:00
Alexander Wilms
c65794b9e3
Fix typos
2024-02-13 15:23:30 +01:00
Alexander Wilms
678cacbd25
Remove more redundant virtual
specifiers
...
`grep -nr "virtual " | grep -v googletest | grep " override" | grep -v overriden > ../redundant_virtual.txt`
```python
import os
with open("../redundant_virtual.txt") as f:
for line in f:
print()
line: str = line.strip()
print(line)
tmp = line.split(":",2)
file = tmp[0].strip()
code = tmp[-1].strip()
print(file)
print(code)
new_code = code.replace("virtual ", "", 1)
# https://superuser.com/a/802490/578501
command = f"export FIND='{code}' && export REPLACE='{new_code}' && ruby -p -i -e \"gsub(ENV['FIND'], ENV['REPLACE'])\" {file}"
os.system(command)
```
2024-02-13 15:21:30 +01:00
Ivan Savenko
7cf5e317a4
Merge pull request #3612 from IvanSavenko/demon_summon_fix
...
Fixes demon summoning
2024-02-13 16:05:13 +02:00
Ivan Savenko
bfdb9a85f0
Merge pull request #3611 from IvanSavenko/lobby_fixes
...
Networking code fixes
2024-02-13 15:30:26 +02:00
Ivan Savenko
76b4a4c297
Merge pull request #3610 from IvanSavenko/sonarcloud_fixes
...
Sonarcloud fixes
2024-02-13 15:30:11 +02:00
Ivan Savenko
18d05b3483
Merge pull request #3605 from Alexander-Wilms/json5-validation
...
Simplify validation of JSON with comments & CI ccache fix for feature branches in forks
2024-02-13 15:29:25 +02:00
Ivan Savenko
ece3403fc7
Fixes demon summoning - sacrificed creatures no longer remain after
...
battle and included into casualties
2024-02-12 21:53:38 +02:00
Ivan Savenko
7c34d48258
Minor fixes and corrections to network-related code. No functionality
...
changes.
2024-02-12 18:57:20 +02:00
Ivan Savenko
74f9b03516
Fix crash on closing client while server is active
2024-02-12 16:36:13 +02:00
Ivan Savenko
763e18d202
Fix symlink target - use absolute path
2024-02-12 16:35:18 +02:00
Ivan Savenko
62148e1506
Fix build
2024-02-12 15:08:46 +02:00
Ivan Savenko
4c70abbeb5
Reduced usage of global variables - removed or made const / constexpr
2024-02-12 13:49:45 +02:00
Ivan Savenko
6e399eb21a
Make some non-const static variables const or constexpr
2024-02-12 13:22:54 +02:00
Ivan Savenko
6db405167d
Clarified some (im)possible null dereferences
2024-02-12 13:05:30 +02:00
Ivan Savenko
392c360f88
Replaced some usages of void * with more clear CPack *
2024-02-12 12:53:10 +02:00
Ivan Savenko
b796ed8626
Fix undefined behavior
2024-02-12 12:33:09 +02:00
Ivan Savenko
2540685c62
Fix invalid check
2024-02-12 12:32:53 +02:00
Ivan Savenko
c03196257f
Fix "identical expressions on both sides of comparison"
2024-02-12 12:32:35 +02:00
Ivan Savenko
c577ea3e8d
Fix potentially uninitialized values
2024-02-12 12:31:27 +02:00