Christoph Oelckers
520b960ca5
Reverted the path node system
...
Code reviews were unfavorable so better nix it before it finds wider use.
2024-03-15 20:24:39 +01:00
Ricardo Luís Vaz Silva
3348822390
...
2024-03-05 13:44:38 -05:00
Ricardo Luís Vaz Silva
cc51b486e0
TArray Binary Search
2024-03-05 13:44:38 -05:00
Ștefan Talpalaru
b5eb8f47db
GCC-13 support, when precompiled headers are off
2024-02-05 17:40:37 +01:00
Christoph Oelckers
f1db369883
moved a few things out of the common code that should be defined privately.
2024-02-04 13:54:25 +01:00
Christoph Oelckers
b37ea19f86
remove unnecessary #defines
2024-02-03 16:07:12 +01:00
Christoph Oelckers
963209e8af
removed external stuff from tarray.h
2024-01-09 16:47:24 +01:00
Ricardo Luís Vaz Silva
8ae93fb87f
use map instead of linear search to find texture indices for animation
2024-01-09 06:38:08 -05:00
Christoph Oelckers
0e51c5832d
fix compilation
2024-01-07 10:05:03 +01:00
Christoph Oelckers
f13ae3b706
addressed a few things pointed out by static analysis
...
* marking move assignments noexcept
* using [[fallthrough]] consistently.
* getting rid of alloca.
2024-01-07 08:46:47 +01:00
Christoph Oelckers
83aa9388ca
backend update from Raze
...
* moving large allocations off the stack
* use proper printf formatters for size_t and ptrdiff_t.
* adding some missing 'noexcept'.
2024-01-06 15:24:10 +01:00
Professor Hastig
c446af41ae
fixed TArray::push_back
2024-01-05 16:42:40 +01:00
Christoph Oelckers
97c04357f1
fixed alternative parts of vectors.h
...
Not relevant for GZDoom itself but let's keep things tidy.
2023-12-21 22:11:53 +01:00
Ignacio Taranto
e572bb8db3
Fix Zip file modification timestamps
...
The problem was that `time_to_dos` was putting the last modification
file date first and the time second. This was causing the date to be
interpreted as the time and vice versa when reading the Zip file.
See: https://github.com/ZDoom/gzdoom/issues/2306
2023-12-20 23:26:52 +01:00
Christoph Oelckers
bae3adc89f
moved writezip.cpp out of filesystem and eliminated uses of TArray.
2023-12-15 16:59:00 +01:00
Christoph Oelckers
fe106d9bfe
merge FileData and ResourceData.
2023-12-14 17:22:29 +01:00
Christoph Oelckers
36d05112d5
backend update from Raze.
...
Mainly fixing case table for Georgian script and de-inlining M_Calloc.
2023-12-10 13:26:43 +01:00
Christoph Oelckers
41573df58f
added STL compatible access functions to TArray.
...
This allows using them in templates made for STL containers.
2023-12-10 09:07:48 +01:00
Christoph Oelckers
d5e9783324
fixed bad parameter types in direct native functions.
...
bool can cause undefined behavior here, these should be int.
2023-11-07 18:06:50 +01:00
Christoph Oelckers
d65d1a3b82
minor backend update from Raze.
2023-10-17 20:54:27 +02:00
Rachael Alexanderson
88b5d9aba1
- fix $PROGDIR expansion being case sensitive
2023-10-10 10:29:01 -04:00
Christoph Oelckers
79f2fc6553
backend update from Raze.
...
Mainly a VMFunction script type and some associated utilities.
2023-10-09 18:45:30 +02:00
Christoph Oelckers
448ca88bfd
fixed some signed-ness issues.
2023-10-08 08:11:56 +02:00
Ricardo Luís Vaz Silva
c69941e49d
fix GetChars in linux/macOS
2023-10-08 07:31:59 +02:00
Christoph Oelckers
6055ff029d
the remaining GetChars additions.
...
The offending operator const char * no longer exists.
2023-10-07 23:44:01 +02:00
Christoph Oelckers
7a5a2858a2
yet even more GetChars calls added.
2023-10-07 23:29:24 +02:00
Christoph Oelckers
c94c63110e
added a third batch of GetChars call to FStrings.
2023-10-07 23:03:40 +02:00
Christoph Oelckers
89535b803a
Backend update from Raze.
2023-10-07 18:42:24 +02:00
Ricardo Luís Vaz Silva
fa8df5a4e5
make Array::Append faster for simple structs
...
This makes appending arrays of simple types faster
2023-10-07 17:27:35 +02:00
Ricardo Luís Vaz Silva
65ea4f91b6
fix TMap move insertion, was using the copy constructor due to a missing std::move
2023-10-07 17:27:35 +02:00
Professor Hastig
ab8711b57a
removed several bad casts to 'long'.
...
The 'long' type should generally be avoided because its size differs on Windows and Linux/Mac so it is almost guaranteed to cause undefined behavior
2023-10-04 16:47:43 +02:00
Christoph Oelckers
48ba63c022
added even more explicit GetChars() calls.
2023-10-03 15:55:08 +02:00
Christoph Oelckers
1717ff47b2
add GetChars() accessors to many FString uses where const char* is wanted.
...
By no means complete, it's just a start to get rid of that automatic type conversion operator.
2023-10-03 14:27:39 +02:00
alexey.lysiuk
678cab7994
- fixed DumpCPUInfo() definition for non-x64 platforms
...
fix #2188
2023-09-26 09:48:11 +03:00
Christoph Oelckers
7491361863
- do some cleansing of the GPU string and add CPU name when only getting an anonymous series name.
...
The cleansing is mainly for AMD's Linux drivers which report too much extraneous info here.
The CPU name helps when classifying anonymous iGPU series.
2023-09-24 22:20:50 +02:00
Christoph Oelckers
71cc93f42c
- fixed: ZScript's lump reader may not truncate strings at 0 bytes, like all other callers of GetStringFromLump need.
2023-09-16 07:44:58 +02:00
Christoph Oelckers
4fd5f00c4b
- made all FileReader implementations 64 bit capable.
2023-09-14 21:45:38 +02:00
Christoph Oelckers
e7a79b0d44
- string conversion fixes
2023-09-06 00:19:36 +02:00
alexey.lysiuk
bfefc12427
- fixed a bunch of Linux and macOS compilation errors
2023-08-23 12:34:33 +03:00
Christoph Oelckers
ebb71cebf1
- put the entire filesystem code into a namespace and created some subdirectories.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
2c2bf0265f
- refactored all places which treated FileData as zero terminated.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
4906d287cb
- use std::vector<std::string> to pass the file list to InitMultipleFiles
2023-08-22 22:54:52 +02:00
Christoph Oelckers
a0d679b84b
- FileData cleanup and uncoupling from FString.
...
Work is still needed to allow this to use the lump cache directly because some decisions in the past made this data padded by a zero byte.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
5398045f7d
- got rid of FileSystem::GetFileData.
...
Using FMemFile is better in all these places.
2023-08-22 22:18:53 +02:00
Christoph Oelckers
def6bffdfc
- use std::vector for the MemoryArrayReader
2023-08-22 21:49:55 +02:00
Christoph Oelckers
f0bbc32bae
- add m_swap.h to several files.
2023-08-22 21:49:55 +02:00
Christoph Oelckers
5f3d25ef44
- use ScanDirectory in all places where the findfile API was used.
...
This allows to completely hide its implementation details from the rest of the code which only gets a list of file names now.
2023-08-22 21:49:54 +02:00
Christoph Oelckers
1dc47f91c2
- file system error management refactoring.
2023-08-22 21:49:54 +02:00
Christoph Oelckers
7fee89d1f5
- uncouple the file system from the engine's Printf function.
...
This is needed to use it in non GZDoom based projects.
2023-08-17 21:36:22 +02:00
Christoph Oelckers
9b790d23a8
- optimization of WideString and FileReader::Printf.
...
Both now omit the intermediate FString as the target buffer can be directly written to.
WideString was also moved to utf8.cpp/h to uncouple from zstring.
2023-08-17 18:45:33 +02:00