Commit Graph

421 Commits

Author SHA1 Message Date
matt peters
5e38b33441 CompactBinary: Add operator<<(FCbWriter&, const FString&) so that defining operator<< for some other type that can implicitly construct from FString does not cause an ambiguous overload error.
#rnx
#rb Devin.Doucette

[CL 31875855 by matt peters in ue5-main branch]
2024-02-28 12:55:45 -05:00
dominic couture
352738cc49 Added TVersionedWriter/Reader a template you can use to make an FArchiveProxy that uses the provided writer/reader but automatically serialize the custom version container
#rb Johan.Torp, Steve.Robb

[CL 31714133 by dominic couture in ue5-main branch]
2024-02-21 22:12:54 -05:00
steve robb
148d4c61d5 Deprecated TIsTriviallyDestructible.
#rb devin.doucette

[CL 31695997 by steve robb in ue5-main branch]
2024-02-21 15:55:03 -05:00
dan thompson
2b3a8d681c FCompression interface update to 64 bit.
-> Done because UE disables 32 bit down cast - silently could overflow.
-> General use should automatically work.
-> Deprecate some old 32 bit functions not generally used.
-> Deprecate/rename some ancient flags for future removal.
-> Update CompressorData to uint ptr for future use
-> Remove some stuff deprecated in 4.21 (2018)
#rb fabian.giesen
#jira UE-173911

[CL 31688300 by dan thompson in ue5-main branch]
2024-02-21 12:49:23 -05:00
devin doucette
a43a3a2068 CompactBinary: Fix AsArray() and AsObject() to store type errors
#rb Matt.Peters

[CL 31357129 by devin doucette in ue5-main branch]
2024-02-09 16:49:24 -05:00
matt peters
1ac908e58b UPackage::SavedHash: Add the API that replaces UPackage->Guid. FIoHash SavedHash (or PackageSavedHash ) is now used instead on UPackage, FPackageSummary, and FAssetPackageData. Remark Guid as deprecated; we will remove it in 5.5. This replacement only applies to the editor; in the cooked game we are removing UPackage->Guid with no replacment because it is unnecessary and costs memory.
[RN] Minor, Foundation
#rb Zousar.Shaker

[CL 31174668 by matt peters in ue5-main branch]
2024-02-05 10:52:11 -05:00
steve robb
66266c6a11 Fixed up DerivedDataCache, DesktopPlatform, ApplicationCore, AssetRegistry, Core, CoreUObject, Projects, Sockets code to use EAllowShrinking instead of bools.
[CL 30676428 by steve robb in ue5-main branch]
2024-01-17 19:51:06 -05:00
dan elksnitis
fa9ae7d7a6 [MemoryWriter] template array allocator type; support 8/16 bit index sizes
#rb Devin.Doucette

[CL 30661041 by dan elksnitis in ue5-main branch]
2024-01-17 12:07:24 -05:00
matt peters
557cfe0225 IterativeCooker: Add initial set of allowed and blocked classes for incremental cooking, and some utility functions that we needed to implement it.
ModuleManager: Add version of ModuleExists that also returns the discovered filename of the .dll.
PackageName: Add TryConvertScriptPackageNameToModuleName.
#rb Zousar.Shaker
#rnx

[CL 30600379 by matt peters in ue5-main branch]
2024-01-12 14:28:27 -05:00
steve robb
e49857d55f Added FArchiveFromStructuredArchiveImpl::operator<< overload for FObjectPtr - fixes crash when serializing TSubclassOf.
Removed deprecated SA_FIELD_NAME macro.

#rb graeme.thornton
#jira UE-203208

[CL 30428537 by steve robb in ue5-main branch]
2023-12-21 11:41:57 -05:00
maxime mercier
8d44cb11c1 Support of new overridable serialization
New Array and Map overridable serialization logic to better support conatiner of subobjects in BP
New property tag scope for access inside property serialization methods

#jira UE-188847
#rb Francis.Hurteau, Steve.Robb, jodon.karlik, Nicholas.Frechette, Johan.Torp, mikko.mononen, Phillip.Kavan

[CL 29994664 by maxime mercier in ue5-main branch]
2023-11-29 14:05:12 -05:00
steve robb
0bbd5e4d69 Fixed deprecated FString constructors.
#rb james.hopkin

[CL 29690489 by steve robb in ue5-main branch]
2023-11-13 14:15:15 -05:00
steve robb
83fe932303 Removed TAnd on variadic function argument checks.
#rb danny.couture

[CL 29087205 by steve robb in ue5-main branch]
2023-10-25 09:42:42 -04:00
marc audy
a61593568e Fix PVS warnings - V591: Non-void function should return a value.
Add return values for static_assert cases to placate PVS
Fix copy operators not returning this
Fix a handful of other cases

[CL 28955609 by marc audy in ue5-main branch]
2023-10-20 01:28:06 -04:00
henrik karlsson
7945247356 Header unit fixes (and disabling a few warnings)
[CL 28173546 by henrik karlsson in ue5-main branch]
2023-09-23 14:10:24 -04:00
matt peters
a77af3f0e8 ZenStore structures: expose structures to interpret zenstore headers for use in -diffonly cooks.
PackageStoreOptimizer: Expose a static version of FindScriptObject and functions for calculating PublicExportHash.
FNameMap: Add a foreach iterator to provide a list of all data in the struct.
ZenPackageHeader: Move from private to internal, add a constructor that returns an error string rather than fatally asserting.
#rb Per.Larsson
#rnx

[CL 27855318 by matt peters in ue5-main branch]
2023-09-13 18:11:20 -04:00
tomasz obrebski
b2aa3330b3 Undo //Fortnite/Main/Engine/... changelist 27586270
[CL 27587627 by tomasz obrebski in ue5-main branch]
2023-09-04 12:51:06 -04:00
tomasz obrebski
8883b31e93 Fix UB sanitizer errors:
- signed integer overflow in MaterialInstanceSupport.h
- unitialized fast path load buffer causing applying non-zero offset to nullptr in Archive.h
- offset to nullptr on MemStack.h

#jira UE-179443

[CL 27586278 by tomasz obrebski in ue5-main branch]
2023-09-04 10:48:42 -04:00
Matt Peters
7747519417 Cooker: DiffOnly: fix mismatched alloc/malloc calls on the previousbytes read from disk. They were being allocated with FMemory::Malloc but freed with delete. This mismatch is detected by ASAN and can cause crashes.
#rb Zousar.Shaker
#rnx

[CL 27250322 by Matt Peters in ue5-main branch]
2023-08-21 15:35:02 -04:00
peter engstrom
b8d2989d09 Iris - Make sure incoming packet payloads are stored in buffers suitable for Iris bitstreams.
#rb louisphilippe.seguin, mattias.hornlund
#rnx

[CL 26955226 by peter engstrom in ue5-main branch]
2023-08-09 10:25:34 -04:00
dan engelbrecht
b7ecdcbf0b Add a global FCbObjectId SessionObjectId usable to coordinate session id's to zenserver.
Change GUID SessionId in FApp to base it on the SessionObjectId to make it easier to correlate session ids in zenserver

#rb stefan.boberg zousar.shaker

[CL 26841373 by dan engelbrecht in ue5-main branch]
2023-08-04 04:15:04 -04:00
Matt Peters
ec9fef914b Cooking: Iterative: Add -iterativevalidate mode that diffs iteratively unmodified previous packages against their resaved version.
#rb Zousar.Shaker
#rnx

[CL 26327591 by Matt Peters in ue5-main branch]
2023-06-29 16:40:47 -04:00
henrik karlsson
e7a889441d [Core]
* Moved dllexport from type to methods/staticvar. This improves compile times, memory and performance in dll builds

#rb

[CL 26081848 by henrik karlsson in ue5-main branch]
2023-06-17 15:59:58 -04:00
jon fairchild
d24b5c8fa6 Remove calls to SetNetVersionsOnArchive() and SetNetVersionsFromArchive() in FInBunch
#rb ryan.gerleve louisphilippe.seguin

[CL 25951236 by jon fairchild in ue5-main branch]
2023-06-13 10:28:07 -04:00
Matt Peters
88d33c5f37 Cooker and SavePackage: Move calls to BeginCacheForCookedPlatformData and ClearCachedCookedPlatformData from SavePackage into the cooker. Moving the Clear calls allows us to clear only after repeated SavePackage attempts from the diffonly cooker have been completed, preventing a break in contract by having objects being saved after Clear is called. Moving the Begin calls is necessary to track which objects need Clear called on them.
#jira FORT-613920
#rn Minor, Cooking
#rb Zousar.Shaker

[CL 25851419 by Matt Peters in ue5-main branch]
2023-06-07 13:56:57 -04:00