Commit graph

1541 commits

Author SHA1 Message Date
Christoph Oelckers
436f24add5 disable the buffering file reader.
This was definitely crashing on Death Wish's E1 movie and probably caused other problems as well.
2024-01-12 00:30:56 +01:00
Christoph Oelckers
3299e0b8c0 silence Unix only message for missing files that are allowed to be missing. 2024-01-12 00:28:00 +01:00
Christoph Oelckers
21db5d33c2 updated the game picker code. 2024-01-12 00:22:08 +01:00
Christoph Oelckers
48977265ae minor backend update from GZDoom. 2024-01-07 10:05:41 +01:00
Christoph Oelckers
9e7785e44c free the WidgetResources file on shutdown to reduce the number of reported memory leaks. 2024-01-06 14:42:36 +01:00
Christoph Oelckers
218a617e6b removed legacy Windows OpenGL init code. 2024-01-06 14:40:15 +01:00
Christoph Oelckers
a496332136 use proper printf format specifiers for size_t and ptrdiff_t. 2024-01-06 14:37:57 +01:00
Christoph Oelckers
406cb04952 address a few more issues found by static analysis
* mark move constructors and operators noexcept.
* eliminate large stack allocations in several places.
* some incorrect checks for Windows handles.
2024-01-06 12:25:16 +01:00
Christoph Oelckers
34ecb158b6 fixed some warnings pointed out by Intellisense 2024-01-06 09:31:07 +01:00
Mitchell Richters
4e0ceb9ea9 - Fix some bad printf lines as reported by GCC. 2024-01-06 09:37:07 +11:00
Mitchell Richters
91a05d01d2 - Silence noisy line in resourcefile.h against GCC builds.
In file included from /home/mrichters/Repos/Raze/source/common/filesystem/include/fs_filesystem.h:12,
                 from /home/mrichters/Repos/Raze/source/common/engine/filesystem.h:2,
                 from /home/mrichters/Repos/Raze/source/common/utility/zstring.h:43,
                 from /home/mrichters/Repos/Raze/source/common/platform/posix/i_system.h:14,
                 from /home/mrichters/Repos/Raze/source/common/platform/posix/sdl/hardware.cpp:38:
/home/mrichters/Repos/Raze/source/common/filesystem/include/resourcefile.h: In member function ‘int FileSys::FResourceFile::GetEntryNamespace(uint32_t)’:
/home/mrichters/Repos/Raze/source/common/filesystem/include/resourcefile.h:180:43: warning: enumerated and non-enumerated type in conditional expression [-Wextra]
  180 |                 return (entry < NumLumps) ? Entries[entry].Namespace : ns_hidden;
      |                        ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2024-01-06 09:32:36 +11:00
Christoph Oelckers
673a913f92 Backend update from GZDoom.
Mainly remembering the game list's initial setting.
2024-01-05 17:08:47 +01:00
Christoph Oelckers
5a232f8fa6 eliminated the small white part of the initial window content after the IWAD picker. 2024-01-04 22:23:05 +01:00
Christoph Oelckers
3b834b18af fixed Linux include 2024-01-04 21:09:04 +01:00
Christoph Oelckers
6948ed41a1 added ZWidget based game picker 2024-01-04 20:54:04 +01:00
Christoph Oelckers
b72fcd5185 converted files to UTF-8 2024-01-04 18:29:28 +01:00
Christoph Oelckers
52b3d386cf backend update from GZDoom 2024-01-04 18:24:00 +01:00
Christoph Oelckers
fb6beb905a Blood: fixed cutscene sound not playing when starting a map from the console. 2024-01-04 18:08:23 +01:00
Christoph Oelckers
e2048bd8bd fixed loading of embedded files from directories. 2024-01-04 17:56:15 +01:00
Christoph Oelckers
ac8e80e52f account for resorted directories when accessing the local file path array in file_directory.cpp 2023-12-31 23:42:57 +01:00
Christoph Oelckers
d352f564db minor backend update. 2023-12-28 21:12:24 +01:00
Christoph Oelckers
542997a967 perform music volume lookup by lump number instead of name.
This way any setting will work for both short and long file names.
2023-12-27 20:10:54 +01:00
Christoph Oelckers
6c79e35c25 Backend update from GZDoom. 2023-12-26 22:28:44 +01:00
Christoph Oelckers
af4eaf69e3 silenced some warnings. 2023-12-21 00:50:53 +01:00
Christoph Oelckers
27da9b6b79 fixed crash on trying to read from a mounted directory's content. 2023-12-19 19:01:30 +01:00
Christoph Oelckers
860a0c290b fixed some filesystem issues with directories and compression. 2023-12-17 17:13:42 +01:00
Christoph Oelckers
36930d44bd filesystem update from GZDoom. 2023-12-17 12:48:03 +01:00
Christoph Oelckers
84e10beab4 Blood: fixed cutscene sound not playing when starting a map from the console. 2023-12-17 10:59:25 +01:00
Christoph Oelckers
1e618d2fdb rewrote FileSystem::AddFromBuffer so that it gets backed by an actual FResourceFile. 2023-12-10 15:23:21 +01:00
Christoph Oelckers
745de36ead added Unicode utilities 2023-12-10 15:23:05 +01:00
Christoph Oelckers
c0d166c307 backend update from GZDoom. 2023-12-10 13:30:50 +01:00
Christoph Oelckers
aceed7f71c fixed case mapping for Georgian script. 2023-12-05 22:41:00 +01:00
Christoph Oelckers
9c595c6204 move M_Calloc out of the #ifndef BSD etc... block. 2023-12-05 22:40:58 +01:00
Christoph Oelckers
f6bca4177c - Don't inline M_Calloc() calls because GCC is shit.
* Fixes #1009.
2023-12-05 22:40:58 +01:00
Christoph Oelckers
c06e795703 use FTranslationID in the 2D drawer. 2023-12-05 22:40:57 +01:00
Christoph Oelckers
0265d37fdb use FTranslationID in the model code. 2023-12-05 22:40:56 +01:00
Christoph Oelckers
4cb3b96ddf migrate to FTranslationID support
So far this only adapts to the changes in the backend without making further use of this type.
2023-12-05 22:40:56 +01:00
Christoph Oelckers
6df1a14a92 gave translations a dedicated scripted type.
This is needed for implementing reliable serialization of custom translations. As long as they are merely ints they cannot be restored on loading a savegame because the serialization code does not know that these variables are special.
2023-12-05 22:40:56 +01:00
Christoph Oelckers
6c702847ff Backend update from GZDoom. 2023-12-05 22:39:34 +01:00
Christoph Oelckers
a9dc57e99f fixed potentially undefined behavior with bool parameters in direct native functions. 2023-12-05 22:39:34 +01:00
Christoph Oelckers
93294b2d44 for line intersection, exclude the end point of the intersected line.
This is needed to make Build's utilities work as expected.
2023-12-05 22:39:29 +01:00
Christoph Oelckers
f00a90aa07 two minor backend fixes 2023-12-05 22:39:29 +01:00
Christoph Oelckers
f0b7d57941 fixed Mac compilation.
Unlike the other platforms this builds its config paths from variable data.
2023-12-05 22:39:27 +01:00
Christoph Oelckers
f50430eb7c GetChars in non-windows code. 2023-12-05 22:39:26 +01:00
Christoph Oelckers
90eb9ceafe Use GetChars on FStrings. 2023-12-05 22:39:26 +01:00
Mitchell Richters
1859a902e0 - Fix some warnings in MSVC. 2023-12-05 22:39:26 +01:00
Christoph Oelckers
bbbb61f450 backend update from GZDoom
LZMA update plus several ZScript improvements.
2023-12-05 22:39:26 +01:00
Mitchell Richters
39df2714e9 - Modernise function declarations in Cephis C math to address ongoing GCC and Clang warnings.
Examples:

/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c: In function ‘c_exp’:
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:171:48: warning: declaration of built-in function ‘floor’ without a prototype; expected ‘double(double)’ [-Wbuiltin-declaration-mismatch]
  171 | double polevl(double, void *, int), floor(), ldexp();
      |                                                ^~~~~
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:171:57: warning: declaration of built-in function ‘ldexp’ without a prototype; expected ‘double(double,  int)’ [-Wbuiltin-declaration-mismatch]
  171 | double polevl(double, void *, int), floor(), ldexp();

/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:200:16: warning: passing arguments to 'polevl' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
px = x * polevl( xx, P, 2 );
               ^
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:201:17: warning: passing arguments to 'polevl' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
x =  px/( polevl( xx, Q, 3 ) - px );
                ^
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:167:8: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
double c_exp(x)
       ^
3 warnings generated.
2023-12-05 22:39:24 +01:00
Mitchell Richters
790fc0b28a - Fix most warnings in Clang under Linux. 2023-12-05 22:39:24 +01:00
Mitchell Richters
0c13d4fe3a - Fix most GCC warnings in the backend/common code code.
* Most of them were just signedness issues. Hopefully I got everything right here.
* 3rd party stuff deliberately not touched.
2023-12-05 22:39:23 +01:00