Commit Graph

411 Commits

Author SHA1 Message Date
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
sergio gardeazabal
6c50903854 Added an option on FArchive to early out while setting a custom version if that version was already set in the local custom versions container.
In projects with several custom versions, this results in a considerable improvement because the local container is usually smaller than the global one, and therefore the look-up time is faster, also we avoid going through the SetVersion path.

But this means if the version data in the version registry changed to the specific key you were trying to see, this means the local custom versions container of the archive will not be up-to-date. That is the reason this new option is disabled by default

#jira UE-184135
#rb steve.robb
#preflight 646ceaf12c0a5da0dc8b9c04

[CL 25594216 by sergio gardeazabal in ue5-main branch]
2023-05-23 19:05:46 -04:00
zousar shaker
b0d5721dde Initial implementation of DiffOnly mode for ZenServer as Cooked Output Store. Lacking detailed header diffing, but stubbed in for future addition. When using ZenServer as Cooked Output Store the packages use the ZenPackageSummary header format instead of the PackageFileSummary header format. This is how data is stored in ZenServer and the format it is when fetched. Data produced in process is transformed into this format ahead of diffing.
The code for parsing a view of the ZenPackageSummary has been extracted from AsyncLoading2.cpp into a private h/cpp and is possible to use from the header diffing code when printing out detailed diffs, but is not used yet.

#rb matt.peters
#rb pj.kack
#jira UE-175237

[CL 25549055 by zousar shaker in ue5-main branch]
2023-05-19 14:43:02 -04:00
danny couture
746ffc0243 Fix TSAN warning by avoiding overwriting a value with FArchive_Serialize_BitfieldBool when it is the same during save
#rnx
#rb Steve.Robb
#preflight 643ff87d8d0bcde49c488d38

[CL 25334271 by danny couture in ue5-main branch]
2023-05-04 09:50:41 -04:00
brian bekich
2884cabdb2 Removing deprecated network versions from archive to remove potential race condition with newer custom version
#preflight 645156bc634f5d9cd414e40b
#rb jon.fairchild

[CL 25309635 by brian bekich in ue5-main branch]
2023-05-02 18:25:03 -04:00
Steve Robb
a29e63300e Fixed mismatched copy constructor/assignment operator in FHashedName.
#rb none
#jira none
#preflight none

[CL 25124076 by Steve Robb in ue5-main branch]
2023-04-20 05:48:36 -04:00
francis hurteau
a96e460059 Fix Cooking with DiffOnly while diffing both cooked and optional data
Added cmdline arg to compare or not optional data

#rb Matt.Peters
#preflight 64385c2a0a5a4b944e04c821

[CL 25049459 by francis hurteau in ue5-main branch]
2023-04-14 16:40:23 -04:00
Devin Doucette
32c049c3f5 Removed some includes of Function.h in Core
#preflight 6435cf83127980724b0f16b9
#rnx

[CL 25006462 by Devin Doucette in ue5-main branch]
2023-04-12 10:05:50 -04:00
Ryan Gerleve
9988faf667 Make FBitReader and FNetBitReader Src buffer parameter const.
#jira none
#preflight 6427555e861bf344ce58d994
#rb peter.engstrom

[CL 24892903 by Ryan Gerleve in ue5-main branch]
2023-04-03 10:53:04 -04:00
carlmagnus nordin
024df6d65c ZenCook: Added support for file regions
#preflight 64269c8491589478cdeb2a6f
#rb pj.kack
#rnx

[CL 24869761 by carlmagnus nordin in ue5-main branch]
2023-03-31 08:36:14 -04:00
Brian Bekich
c962e8f6fc FNetworkGUID now supports uint64 values
#jira UE-93777
#preflight 6411f2f5352bd6a889f950a5
#rb peter.engstrom

[CL 24689288 by Brian Bekich in ue5-main branch]
2023-03-17 10:41:53 -04:00