Commit Graph

625 Commits

Author SHA1 Message Date
steven barnett
a22d0f38f4 Allow TSparseArray resize via EmplaceAt.
This is a part of a larger change, 21332740, which fixes TSparseArray::EmplaceAt, which is needed for physics user data.

Slack discussion here: https://epic.slack.com/archives/C024GKBSL/p1663795752638719

[FYI] ian.fox

[CL 22151140 by steven barnett in ue5-main branch]
2022-09-22 22:20:25 -04:00
marti majo
ca82ed87c4 Fixing bug where LruCache::FindByPredicate and PsoLruCache::FindByPredicate are not returning a pointer but a value when an item is found.
[REVIEW] [at]Geoffrey.Wong [at]Derek.Peterson [at]Paul.Moore [at]Michael.Mackie [at]Philip.Buuck

[CL 22100282 by marti majo in ue5-main branch]
2022-09-20 15:40:08 -04:00
richard talbotwatkin
5a595e0092 Fixed issue with TArray::BulkSerialize, when the buffer size can exceed 2Gb.
Even if the array index type is int32, the data buffer can exceed 2Gb.
BulkSerialize requires a cast to ensure the result of NewArrayNum * SerializedElementSize is a 64-bit value.
This should not adversely affect assets previously serialized with BulkSerialize: when saving (but not cooking), the slow path is taken, meaning all the data will be written out correctly.
During cooking and transacting (less permanent operations), the data would have been written and read equally erroneously, so recooking may be required.
#rb Steve.Robb, Robert.Manuszewski, Matt.Peters
#preflight 632490273752284a31829815

[CL 22052384 by richard talbotwatkin in ue5-main branch]
2022-09-16 12:48:51 -04:00
Devin Doucette
2d6866d2ec DDC: Set UnsafeTypeCastWarningLevel to Error
#preflight 631907e2a20b67673b513de6
#rb Zousar.Shaker
#rnx

[CL 21871353 by Devin Doucette in ue5-main branch]
2022-09-07 22:45:29 -04:00
Devin Doucette
27eed0a0bd Array: Fixed unsafe type cast warnings when moving from an array with a larger size type
#preflight 6317fab1304480f8f8ee3e31
#rb Steve.Robb

[CL 21850748 by Devin Doucette in ue5-main branch]
2022-09-07 10:36:40 -04:00
elias lozadabenavent
b4e72ed6c6 Updated TPagedArray:
* Added Append/Assign std::initializer_list overloads.
* Implemented std::initializer_list assignment operator overload in term of Assign.
* Fixed Append debug assertion: it now properly uses Reserve instead of Grow: added a comment to Grow as this method expects the container capacity to be smaller than the value requested.
* Added unit tests for both Append and Emplace that force the container to Grow.

#tests passed PagedArray unit test in Debug and Test: verified no assertions are triggered.

#preflight 6315db24ab25bb91f5dc10d3

#rb steve.robb

[CL 21801519 by elias lozadabenavent in ue5-main branch]
2022-09-05 15:34:01 -04:00
elias lozadabenavent
8299e664ea * Added TPagedArray: a fixed-block chained array container similar to TChunkedArray. The main difference with TChunkedArray is that TPagedArray doesn't default construct its page elements, they are allocated and constructed as requested.
* Added System::Core::Containers::TPagedArray unit tests (26) to LowLevelUnitTests.
* Added debug visualizer.

#review-Number 21718397
#rb steve.robb, andriy.tylychko

#tests passed TPagedArray unit tests.
#preflight 6311ba48fb6213403c49a39c

[CL 21759819 by elias lozadabenavent in ue5-main branch]
2022-09-02 11:17:49 -04:00
Johan Torp
08e3136970 Fix TNonRelocatableInlineAllocator leaking heap allocations
Reported by James Park

#preflight 630e008d501b64ba333cc277
#rb steve.robb

[CL 21699260 by Johan Torp in ue5-main branch]
2022-08-30 09:05:49 -04:00
christian newman
987fb43b8e Fixing single argument StringToArray() calling nonexistent ToArray() function.
#rb tyler.staples steve.robb

[CL 21572369 by christian newman in ue5-main branch]
2022-08-25 16:58:16 -04:00
Andriy Tylychko
5032ff281d added support for custom allocator for TSpscQueue and TMpscQueue
#preflight 63064680516bef57ffecc19f

[CL 21542556 by Andriy Tylychko in ue5-main branch]
2022-08-24 12:09:28 -04:00
UnrealBot
73409369c0 Branch snapshot for CL 21319338
[CL 21319338 in ue5-main branch]
2022-08-10 16:03:37 +00:00
bryan sefcik
6d8242d801 Fixed issue compiling shipping.
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21167280 via CL 21172497 via CL 21172832
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21183852 by bryan sefcik in ue5-main branch]
2022-07-20 13:00:08 -04:00
bryan sefcik
73bd6752ba Attempting to fix a compile issue that I CNR.
#preflight 62d6f00e185da2495fa2e9cb

#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21166161 via CL 21171903 via CL 21172307
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21183806 by bryan sefcik in ue5-main branch]
2022-07-20 12:58:34 -04:00
Bryan sefcik
b4a6e947d8 Ran IWYU on Public headers under Engine/Source/Runtime/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted.  Nothing is removed.

#ushell-cherrypick of 21065896 by bryan.sefcik
#preflight 62d4b1a5a6141b6adfb0c892
#jira

#ROBOMERGE-OWNER: Bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21150156 via CL 21151754 via CL 21154719
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
#ROBOMERGE-CONFLICT from-shelf

[CL 21181076 by Bryan sefcik in ue5-main branch]
2022-07-20 11:31:36 -04:00
jamie dale
901410a7d6 Fixed deprecation warning
#jira
#rb none
#rnx

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 21112721 via CL 21112846 via CL 21112899
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21142360 by jamie dale in ue5-main branch]
2022-07-17 22:40:10 -04:00
jamie dale
1de56ef0a0 Hardened FPackageName::ParseExportTextPath to better ensure that the source matches the expected format before attempting the parse
#jira
#preflight 62d04a69e468fcfd0b254e6d
#rb Matt.Peters, Robert.Manuszewski
#rnx

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 21111820 via CL 21111855 via CL 21111885 via CL 21112241 via CL 21112393
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21142346 by jamie dale in ue5-main branch]
2022-07-17 22:39:34 -04:00
bryan sefcik
746b7df074 Same as CL 20991367:
Updated Core code to not use CoreMinimal.h when possible.
Core public headers still will contain CoreMinimal.h if any included it before my IWYU changes.
#preflight 62c74ed0324817d81488b7ee

[CL 20993420 by bryan sefcik in ue5-main branch]
2022-07-07 17:41:31 -04:00
bryan sefcik
62489fe2b3 Ran a pass of IWYU on Core.
Things to note regarding this pass:
* No includes are currently being removed from public headers.
* Any private file that has a #if is currently not being updated.

#rb Devin Doucette and Marc Audy
#preflight 62c62086756222ced497ff95
#preflight 62c626d12f2d04691814d331
#preflight 62c630107e606620fdd64e31
#preflight 62c635c6756222ced49a13cf

[CL 20979027 by bryan sefcik in ue5-main branch]
2022-07-06 21:44:18 -04:00
steve robb
554852a0c4 FTCHARToUTF8_Convert potentially deprecated.
Old UE4 namespace renamed.

#rb devin.doucette
#jira UE-132142
#preflight 62c2c9465751c9619371bc59

#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 20933906 via CL 20933908 via CL 20933911
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20934748 by steve robb in ue5-main branch]
2022-07-04 10:28:19 -04:00
steve robb
1b2a6972d9 Undo //Fortnite/Main/... changelist 20912148
#rb none

#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 20912525 via CL 20912560 via CL 20912561
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20913042 by steve robb in ue5-main branch]
2022-07-01 07:49:36 -04:00
steve robb
39ffa82638 Direct FTCHARToUTF8_Convert usage deprecated and replaced with StringCast or FPlatformString.
#rb devin.doucette
#jira UE-132142
#preflight 62bd92d71c0b758797185071

#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 20912148 via CL 20912242 via CL 20912250
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20913038 by steve robb in ue5-main branch]
2022-07-01 07:49:22 -04:00
steve robb
dbe6f4a18d Allow formatting strings to be binary-compatible char types, not only exact types.
#jira UE-132142
#rb devin.doucette
#preflight 62bd5018a3568e30662ad3b4

#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 20890364 via CL 20890433 via CL 20890478
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20892157 by steve robb in ue5-main branch]
2022-06-30 07:58:27 -04:00
steve robb
8266edba03 TIsCharEncodingCompatibleWith, TIsFixedWidthCharEncoding and TIsCharEncodingSimplyConvertibleTo traits, moved out of from FPlatformString because Platform is not available early enough in the compilation process.
#rb devin.doucette
#jira UE-132142
#preflight 62bb65ce6a40330d939074d7

#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 20872353 via CL 20881243 via CL 20881245
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20885686 by steve robb in ue5-main branch]
2022-06-29 18:59:37 -04:00
Andriy Tylychko
081a78ecfb fixed IsEmpty() in T[Spsc/Mpsc]Queue
#preflight 62b9e2730863759d65056afa

[CL 20834380 by Andriy Tylychko in ue5-main branch]
2022-06-27 13:16:55 -04:00
Andriy Tylychko
8c9db6f0d0 added Peek to TSpscQueue and TMpscQueue
#preflight 62b99f9cba62f4498a2be28a

[CL 20829542 by Andriy Tylychko in ue5-main branch]
2022-06-27 08:40:19 -04:00