Files
UnrealEngineUWP/Engine/Source/Runtime/RuntimeAssetCache/Private/RuntimeAssetCacheFilesystemBackend.cpp

121 lines
3.9 KiB
C++
Raw Permalink Normal View History

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#include "RuntimeAssetCacheFilesystemBackend.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "GenericPlatform/GenericPlatformFile.h"
#include "HAL/FileManager.h"
#include "Misc/Paths.h"
#include "Misc/ConfigCacheIni.h"
#include "RuntimeAssetCacheBucket.h"
Copying //UE4/Ocean-Staging to //UE4/Dev-Main (Source: //Ocean/Main @ 3355692) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3348195 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347729 for variable shadow warning caused by CL 3347393 Change 3347935 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347393 for a runtime asset crash Change 3340537 on 2017/03/09 by James.Brinkerhoff Hotfix from CL 3338679 for arrow keys not working to navigate between elements in the details panel Change 3335755 on 2017/03/07 by Ben.Marsh Pass bCreateStubIPA into PrepForUATPackageOrDeploy rather than setting it through a global configuration object (which is no longer accessible). Change 3334652 on 2017/03/06 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3331740 Change 3332441 on 2017/03/03 by James.Brinkerhoff Hotfix from CL 3296668 for assert when creating memory reports #jira OCN-6087: [CRASH] Crash after entering the memreport command into the command line. Change 3318933 on 2017/02/23 by Allan.Bentham Temp workaround for iOS metal sRGB capable render targets sRGB correcting twice. Change 3314064 on 2017/02/21 by Richard.Fawcett Implement randomized manifest filenames for Ocean. Change 3313139 on 2017/02/20 by James.Brinkerhoff Hotfix from CL 3262052 for UE-40782 Put back the skinxx workflow for the staticmesh Change 3292678 on 2017/02/08 by Brian.Zaugg Back out changelist 3292455 Change 3292455 on 2017/02/08 by Brian.Zaugg Back out changelist 3292268 Change 3292268 on 2017/02/08 by Allan.Bentham Restore DestStride output value when locking compressed textures. Change 3288925 on 2017/02/06 by Brian.Zaugg Change this error from a check to an error log: "Loading non-streamed mips from an external bulk file. This is not desireable." Change 3288441 on 2017/02/06 by James.Brinkerhoff Hotfix from CL 3255451 for UE-40384: Reference Viewer comment text is difficult to read #jira OCN-6059: CLONE - Comment boxes are turning opaque when the game is running Change 3285501 on 2017/02/03 by Allan.Bentham Fix for ring buffer not allocating sufficient space for large requests. Change 3280062 on 2017/01/31 by Max.Chen Sequencer: Find object in any package. This fixes an issue where bound objects can't be found. #jira UE-39459 Change 3279375 on 2017/01/31 by Brian.Zaugg Increase TaskGraph thread stack size for non-shipping builds to prevent stack overflow on iOS. Change 3279366 on 2017/01/31 by Brian.Zaugg Fix for iOS virtual keyboard. Change 3275965 on 2017/01/27 by Max.Chen Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence Copy from Release-4.15 #jira UE-40234 Change 3275963 on 2017/01/27 by Max.Chen Sequencer: Fixed crash caused by lingering persistent evaluation data Copy from Release-4.15 #jira UE-40064 Change 3275962 on 2017/01/27 by Max.Chen Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer Copy from Release-4.15 #jira UE-39882 Change 3275523 on 2017/01/27 by James.Brinkerhoff Fix issue with automation tool caused by a bad resolve Change 3274292 on 2017/01/26 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3269883 Change 3252898 on 2017/01/10 by James.Brinkerhoff Hotfix from CL 3187276 for UE-39071: Crash on adding Actor Reference property to a Struct Change 3248463 on 2017/01/05 by Aaron.McLeran Implementing UE-39421 fix into Ocean Change 3247933 on 2017/01/05 by James.Brinkerhoff Hotfix from CL 3246828 for UE-39249: Particle effects only render in one eye for VR Change 3242274 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209235 for UE-16688 - Selection and selection highlight doesn't work on child actors Change 3242273 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209232 for making the function GetComponents optionally include components in child actors Also fixed a circular dependency due to the hotfix (already applied in UE4 Main) Change 3240035 on 2016/12/19 by Jaren.Peterson MovieSceneEventTemplate - Renamed FEventData to FMovieSceneEventData to eliminate confusion and clear up a crash occuring in Ocean debug builds. Change 3236490 on 2016/12/15 by Chad.Garyet Updating packaged build to not make a stub. This was stopping all icons from making it into the .ipa and messing up the resolution settings. also cleaned up the local staging directories. Change 3231487 on 2016/12/12 by Brian.Zaugg Maintain aspect ratio when render target is clamped. Change 3229050 on 2016/12/09 by Brian.Zaugg #ocn - Hotfix from CL 3218104. Fixes code signing errors related to iCloud support. Change 3225632 on 2016/12/07 by Brian.Zaugg New Chair Entertainment Group iOS Distribution certificate .p12. Change 3224015 on 2016/12/06 by Brian.Zaugg #ocn - Hotfix from CL 3223546 fixes iOS audio crash after last merge from main. Change 3221665 on 2016/12/05 by James.Brinkerhoff Merging hotfixes from //UE4/Ocean-Staging to //Ocean/Main Hotfix from CL 3216832 for non-unity build failures Hotfix from CL 3217564 for fixing the FixDylib script being run on too many modules. Mac build farm is oversaturated right now. Change 3217759 on 2016/12/01 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ 3215855 Change 3214085 on 2016/11/29 by Casey.Spencer Removed logic in K2Node_BaseAsyncTask that excluded properties defined on super classes. Check with engine team prior to making change. [CL 3359832 by James Brinkerhoff in Main branch]
2017-03-23 02:04:59 -04:00
#include "RuntimeAssetCacheEntryMetadata.h"
FArchive* FRuntimeAssetCacheFilesystemBackend::CreateReadArchive(FName Bucket, const TCHAR* CacheKey)
{
FString Path = FPaths::Combine(*PathToRAC, *Bucket.ToString(), CacheKey);
return IFileManager::Get().CreateFileReader(*Path);
}
FArchive* FRuntimeAssetCacheFilesystemBackend::CreateWriteArchive(FName Bucket, const TCHAR* CacheKey)
{
FString Path = FPaths::Combine(*PathToRAC, *Bucket.ToString(), CacheKey);
return IFileManager::Get().CreateFileWriter(*Path);
}
FRuntimeAssetCacheFilesystemBackend::FRuntimeAssetCacheFilesystemBackend()
{
GConfig->GetString(TEXT("RuntimeAssetCache"), TEXT("PathToRAC"), PathToRAC, GEngineIni);
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3548365) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3494741 by Steve.Robb Generated code size savings. #jira UE-43048 Change 3495484 by Steve.Robb Fix for generated indices of static arrays when saving configs. Change 3497926 by Robert.Manuszewski Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything. Change 3498077 by Robert.Manuszewski Only use the recursion guard in async loading code when the event driven loader is enabled. Change 3498112 by Ben.Marsh UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own. Change 3500239 by Robert.Manuszewski Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes. Change 3500395 by Steve.Robb Extra codegen savings when not in hot reload. Change 3501004 by Steve.Robb EObjectFlags now have constexpr operators. Change 3502079 by Ben.Marsh UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary. Change 3502527 by Steve.Robb Fix for zero-sized array compile error in generated code when all functions are editor-only. Change 3502542 by Ben.Marsh UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead. Change 3502868 by Steve.Robb Workaround for inefficient generated code with stateless lambdas on Clang. Change 3503550 by Steve.Robb Another generated code lambda optimization. Change 3503582 by Ben.Marsh BuildGraph: Add support for nullable parameter types. Change 3504424 by Steve.Robb New AllOf, AnyOf and NoneOf algorithms. Change 3504712 by Ben.Marsh UAT: Less spammy log and error output from UAT. * Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception). * Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information. * AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log) * Name of the calling function is not included in console output by default, but still included in the log. Change 3504808 by Ben.Marsh UAT: Suppress P4 output when running a recursive instance of UAT. Change 3505044 by Steve.Robb Code generation improved for TCppClassType code. Change 3505485 by Ben.Marsh Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module. Change 3505699 by Ben.Marsh Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins. Change 3506055 by Ben.Marsh UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output. Change 3507745 by Robert.Manuszewski Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses). Change 3507911 by Ben.Marsh Plugins: Minor changes to plugin descriptors. * Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors. * Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from. Change 3508669 by Ben.Marsh EC: Parse multi-line messages from UBT and UAT. Change 3508691 by Ben.Marsh Fix double-spacing of cook stats. Change 3509245 by Steve.Robb UHT makefiles removed. Flag audit removed. Change 3509275 by Steve.Robb Fix for mismatched stat categories in AudioMixer. #jira UE-46129 Change 3509289 by Robert.Manuszewski Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably. Change 3509294 by Robert.Manuszewski UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it. Change 3509312 by Steve.Robb GitHub# 3679: Add TArray constructor that takes a raw pointer and a count Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too. #jira UE-46136 Change 3509396 by Steve.Robb GitHub# 3676: Fix TUnion operator<< compile error #jira UE-46099 Change 3509633 by Steve.Robb Fix for line numbers on multiline macros. Change 3509938 by Gil.Gribb UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading. Change 3510593 by Daniel.Lamb Fixed up unsoilicited files getting populated with files which aren't finished being created yet. #test None Change 3510594 by Daniel.Lamb Fixed up temp files directory for patching. Thanks David Yerkess @ Milestone #review@Ben.Marsh Change 3511628 by Ben.Marsh PR #3707: Fixed UBT stack size (Contributed by gildor2) Change 3511808 by Ben.Marsh Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git) #jira UE-46540 Change 3512017 by Ben.Marsh Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface. Change 3513935 by Steve.Robb Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477. Change 3514142 by Steve.Robb MemoryProfiler2 added to generated solution. Change 3516463 by Ben.Marsh Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user. Change 3517860 by Ben.Marsh PR #3727: FString Dereference Fixes (Contributed by jovisgCL) Change 3517967 by Ben.Marsh Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line. Change 3518070 by Steve.Robb Disable Binned2 stats in shipping non-editor builds. Change 3520079 by Steve.Robb Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions. #jira UE-24034 Change 3520080 by Robert.Manuszewski Made max package summary size to be configurable with ini setting Change 3520083 by Steve.Robb Force a GC after hot reload to clean up reinstanced objects which may still tick. #jira UE-40421 Change 3520480 by Robert.Manuszewski Improved assert message when the initial package read request was too small. Change 3520590 by Graeme.Thornton SignedArchiveReader optimizations - Loads more stats - Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader - Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time - Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries Change 3521023 by Graeme.Thornton Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing Change 3521787 by Ben.Marsh PR #3736: Small static code analysis fixes (Contributed by jovisgCL) Change 3521789 by Ben.Marsh PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar) Change 3524721 by Ben.Marsh Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core. Change 3524741 by Ben.Marsh Move PumpMessages() into FPlatformApplicationMisc. Change 3525399 by Ben.Marsh UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment. Change 3525743 by Ben.Marsh UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds. Change 3525746 by Ben.Marsh EC: Include the clobber option on new workspaces, to allow overriding version files when syncing. Change 3526453 by Ben.Marsh UGS: Do not generate project files when syncing precompiled binaries. Change 3527045 by Ben.Marsh Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting. Change 3527420 by Ben.Marsh UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing). Config files are now read from: Engine/Programs/UnrealGameSync/UnrealGameSync.ini Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini If a project is selected: <ProjectDir>/Build/UnrealGameSync.ini <ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini If the .uprojectdirs file is selected: Engine/Programs/UnrealGameSync/DefaultProject.ini Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini Change 3528063 by Ben.Marsh Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse. Change 3528415 by Ben.Marsh UAT: Remove \r characters from the end of multiline log messages. Change 3528427 by Ben.Marsh EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent. Change 3528485 by Ben.Marsh EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places. Change 3528505 by Steve.Robb PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL) #jira UE-46819 Change 3528772 by Robert.Manuszewski Enabling actor and blueprint clustering in ShooterGame Change 3528786 by Robert.Manuszewski PR #3760: Fix typo (Contributed by jesseyeh) Change 3528792 by Steve.Robb PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL) #jira UE-46962 Change 3528941 by Robert.Manuszewski Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object. #jira UE-44996 Change 3530241 by Ben.Marsh UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value. Change 3531377 by Ben.Marsh Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it. This has several advantages over the per-module platform whitelist/blacklist: * Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore. * References to dependent plugins from platform-specific plugins can now be eliminated. * Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly). * The editor can load any plugins without having to whitelist supported editor host platforms. UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime. Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary. Change 3531502 by Jin.Zhang Add support for GPUCrash #rb Change 3531664 by Ben.Marsh UBT: Change output format from C# JSON writer to match output by the engine. Change 3531848 by Ben.Marsh UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable. Change 3531869 by Ben.Marsh UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field. Change 3532474 by Ben.Marsh UBT: Use the same mechanism as UAT for logging exceptions. Change 3532734 by Graeme.Thornton Initial VSCode Support - Tasks generated for building all game/engine/program targets - Debugging support for targets on Win64 Change 3532789 by Steve.Robb FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap. Set_Add and Map_Add no longer have a return value. FScriptSet::Find and FScriptMap::Find functions are now FindIndex. FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash. Change 3532845 by Steve.Robb Obsolete UHT settings deleted. Change 3532875 by Graeme.Thornton VSCode - Add debug targets for different target configurations - Choose between VS debugger (windows) and GDB (mac/linux) Change 3532906 by Graeme.Thornton VSCode - Point all builds directly at UBT rather than the batch files - Adjust mac build tasks to run through mono Change 3532924 by Ben.Marsh UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root. Change 3535234 by Graeme.Thornton VSCode - Pass intellisense system a list of paths to use for header resolution Change 3535247 by Graeme.Thornton UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation Change 3535376 by Graeme.Thornton VSCode - Added build jobs for C# projects - Linked launch tasks to relevant build task Change 3537083 by Ben.Marsh EC: Change P4 swarm links to start at the changelist for a build. Change 3537368 by Graeme.Thornton Fix for crash in FSignedArchiveReader when multithreading is disabled Change 3537550 by Graeme.Thornton Fixed a crash in the taskgraph when running single threaded Change 3537922 by Steve.Robb Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT. Change 3539691 by Graeme.Thornton VSCode - Various updates to get PC and Mac C++ projects building and debugging. - Some other changes to C# setup to allow compilation. Debugging doesn't work. Change 3539775 by Ben.Marsh Plugins: Various fixes to settings for enabling plugins. * Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled). * Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed. * Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them. Change 3540788 by Ben.Marsh UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile). Example usage: public class UnrealPakTarget : TargetRules { public UnrealPakTarget(TargetInfo Target) : base(Target) { Type = TargetType.Program; LinkType = TargetLinkType.Monolithic; LaunchModuleName = "UnrealPak"; if(HostPlatform == UnrealTargetPlatform.Win64) { PreBuildSteps.Add("echo Before building:"); PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)"); PostBuildSteps.Add("echo After building!"); PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)"); } } } Change 3541664 by Graeme.Thornton VSCode - Add problemMatcher tag to cpp build targets Change 3541732 by Graeme.Thornton VSCode - Change UBT command line switch to "-vscode" for simplicity Change 3541967 by Graeme.Thornton VSCode - Fixes for Mac/Linux build steps Change 3541968 by Ben.Marsh CRP: Pass through the EnabledPlugins element in crash context XML files. #jira UE-46912 Change 3542519 by Ben.Marsh UBT: Add chain of references to error messages when configuring plugins. Change 3542523 by Ben.Marsh UBT: Add more useful error message when attempt to parse a JSON object fails. Change 3542658 by Ben.Marsh UBT: Include a chain of references when reporting errors instantiating modules. Change 3543432 by Ben.Marsh Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set. Change 3543436 by Ben.Marsh UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails. Change 3543536 by Ben.Marsh UBT: Downgrade message about redundant plugin references to a warning. Change 3543871 by Gil.Gribb UE4 - Fixed a critical crash bug with non-EDL loading from pak files. Change 3543924 by Robert.Manuszewski Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes. +Small optimization to token stream generation code. Change 3544469 by Jin.Zhang Crashes page displays the list of plugins from the crash context #rb Change 3544608 by Steve.Robb Fix for nativized generated code. #jira UE-47452 Change 3544612 by Ben.Marsh Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages(). #jira UE-47449 Change 3545954 by Gil.Gribb Fixed a critical crash bug relating to a race condition in async package summary reading. Change 3545968 by Ben.Marsh UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same. #jira UE-47419 Change 3545976 by Ben.Marsh EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch. Change 3546185 by Ben.Marsh Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped. Change 3547084 by Gil.Gribb Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms. Change 3547968 by Gil.Gribb Fixed critical race which potentially could cause a crash in the pak precacher. Change 3504722 by Ben.Marsh BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run. For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as: ERROR: Unable to write to foo.txt while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" /> at Engine\Build\InstalledEngineBuild.xml(91) (see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace) Change 3512255 by Ben.Marsh Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated. Change 3512332 by Ben.Marsh Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4. Change 3512393 by Ben.Marsh Rename FPaths::GameLogDir() to FPaths::ProjectLogDir(). Change 3513452 by Ben.Marsh Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project. Change 3516262 by Ben.Marsh Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor. * Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod. * The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders). Change 3517565 by Ben.Marsh Remove fixed engine version numbers from OSS plugins. Change 3518005 by Ben.Marsh UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false. Change 3518054 by Ben.Marsh UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard. Change 3524496 by Ben.Marsh Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core. Change 3524641 by Ben.Marsh Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc. Change 3528723 by Steve.Robb MoveTemp now static asserts if passed a const reference or rvalue. MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious. Fixes to violations of these new rules. Change 3528876 by Ben.Marsh Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste. Change 3529073 by Ben.Marsh Add script to package ShooterGame for any platforms. Change 3531493 by Ben.Marsh Update platform-specific plugins to declare the target platforms they support. Change 3531611 by Ben.Marsh UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates. Change 3531868 by Ben.Marsh Resaving project descriptors to remove invalid fields. Change 3531983 by Ben.Marsh UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders. * Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer. * Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type) * Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo")) * An error is output if any restricted folder names other than the output platform are in the staged output. Change 3540315 by Ben.Marsh UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers. Change 3542410 by Ben.Marsh UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already. Change 3543018 by Ben.Marsh UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions. Change 3544371 by Steve.Robb Fixes to TSet_Add and TMap_Add BPs. #jira UE-47441 [CL 3548391 by Ben Marsh in Main branch]
2017-07-21 12:42:36 -04:00
PathToRAC = FPaths::ProjectSavedDir() / PathToRAC;
}
bool FRuntimeAssetCacheFilesystemBackend::RemoveCacheEntry(const FName Bucket, const TCHAR* CacheKey)
{
FString Path = FPaths::Combine(*PathToRAC, *Bucket.ToString(), CacheKey);
return IFileManager::Get().Delete(*Path);
}
bool FRuntimeAssetCacheFilesystemBackend::ClearCache()
{
return IFileManager::Get().DeleteDirectory(*PathToRAC, false, true);
}
bool FRuntimeAssetCacheFilesystemBackend::ClearCache(FName Bucket)
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040) #lockdown Nick.Penwarden ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3459524 by Marc.Audy Get/Set of properties that were previously BPRW/BPRO should error when used #jira UE-20993 Change 3460004 by Phillip.Kavan #jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value. Change summary: - Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation. Change 3461210 by Phillip.Kavan #jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry. Change summary: - Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database. - Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached. - Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid. - Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid. - Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals. - Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick. Notes: - Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor. Change 3461373 by Lukasz.Furman fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad #jira UE-44231 Change 3461409 by Lukasz.Furman fixed reenabling automatic navmesh generation in Editor Preferences #ue4 Change 3461550 by Ben.Zeigler #jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors Change 3462625 by Zak.Middleton #ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come). github PR #3620 Change 3462796 by Dan.Oconnor Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame #jira UE-45434 Change 3462995 by Ben.Zeigler #jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin Change 3463099 by Ben.Zeigler #jira UE-45471 Allow abstract base classes for primary assets Change 3464809 by Marc.Audy Expose FVector2D / FVector2D to blueprints #jira UE-45427 Change 3467254 by Mieszko.Zielinski Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4 Change 3467644 by Dan.Oconnor Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing. #jira UE-45443, UE-45444 Change 3468176 by Dan.Oconnor Fix dependent blueprints being marked dirty when a blueprint is compiled Change 3468353 by Michael.Noland UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game Change 3470532 by Dan.Oconnor Re-enable compilation manager Change 3470572 by Dan.Oconnor Fix for pin paramters resetting when an archetype was reinstanced #jira UE-45619 #rnx Change 3471949 by Mason.Seay Adding Primary Assets for testing Change 3472074 by Ben.Zeigler #jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache. Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking Change 3472079 by Ben.Zeigler With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here Change 3473429 by Lukasz.Furman changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh) #jira UE-41884 Change 3473476 by Lukasz.Furman changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh) #jira UE-41884 Change 3473663 by Ben.Zeigler Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added Change 3473679 by Mason.Seay Slight cleanup of test map and added ability to teleport across level for easy navigation Change 3473712 by Marc.Audy Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value Change 3474055 by Marc.Audy When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with. #jira UE-41828 Change 3474119 by mason.seay Tweaked Force Feedback test Change 3474156 by Marc.Audy Actually enable orphan pin retention Change 3474382 by Ben.Zeigler Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing Change 3474386 by Ben.Zeigler Close popup window when adding asset class to audit window Change 3474491 by Ben.Zeigler Remove ability for Worlds to not be saved as assets, this has been the default since 2014. Change 3475363 by Marc.Audy Alt-click now works with orphaned pins #jira UE-45699 Change 3475523 by Marc.Audy Fixup Fortnite and Paragon content for orphaned pin errors and warnings Change 3475623 by Phillip.Kavan #jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor. Change summary: - Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value. Change 3476008 by Dan.Oconnor Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value. #jira UE-18765 Change 3476115 by Dan.Oconnor Fix missing category information for inherited functions when using compilation manager #jira UE-45660 #rnx Change 3476577 by Lukasz.Furman added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms) #ue4 Change 3476587 by Phillip.Kavan #jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions. Change summary: - Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up. - Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree). Notes: - The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398. #rnx Change 3476723 by Dan.Oconnor Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager #jira UE-45468 #rnx Change 3476948 by Michael.Noland Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing Change 3476970 by Ben.Zeigler Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly Change 3477536 by Marc.Audy Don't display default value box on linked orphaned input pins Change 3477835 by Marc.Audy Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected #jira UE-45754 Change 3478027 by Marc.Audy Minor performance optimization #rnx Change 3478198 by Phillip.Kavan #jira UE-42431 - Remove an unnecessary ensure() when pasting an event node. Change summary: - Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node. Change 3478485 by Marc.Audy Eliminate extraneous error messages about orphaned pins on get/set nodes #jira UE-45749 #rnx Change 3478756 by Marc.Audy Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums #jira UE-45721 #rnx Change 3478926 by Marc.Audy Non-blueprint type structs can no longer be made/broken Non-blueprint visible properties in structs will no longer have pins created for them #jira UE-43122 Change 3478988 by Marc.Audy DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function. #jira UE-45524 Change 3479818 by Marc.Audy Allow ctrl-drag off of orphan pins #jira UE-45803 Change 3480214 by Marc.Audy Modifications to user defined enumerations are now transacted #jira UE-43866 Change 3480579 by Marc.Audy Maintain all pin properties through transactions. #rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle. Change 3481043 by Marc.Audy Make/Break of structs does not depend on having blueprint exposed properties. Splitting of a struct pin still requires blueprint exposed properties. #jira UE-45840 #jira UE-45831 Change 3481271 by Ben.Zeigler Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0 Clean up ChunkDependencyInfo and make it properly public Move ShouldSetManager to be WITH_EDITOR Ported from WEX branch #RB peter.sauerbrei Change 3481373 by Dan.Oconnor Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes #jira UE-45704 Change 3481380 by Ben.Zeigler Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful Change 3482362 by Marc.Audy Fix properties not exposed to blueprint warnings for input properties on function graphs. #jira UE-45824 Change 3482406 by Ben.Zeigler #jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map Change 3482498 by Ben.Zeigler Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class Change 3482517 by Lukasz.Furman fixed smart navlink update functions removing important flag #jira UE-45875 Change 3482538 by Marc.Audy When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float #jira UE-45846 Change 3482773 by Marc.Audy Don't show default value or pass by reference for exec pins #jira UE-45868 Change 3482791 by Ben.Zeigler #jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function Change 3483131 by Zak.Middleton #ue4 - InterpToMovementComponent: - Fix velocity not zeroed when interpolation stops. - Various fixes when calculating velocity and time when substepping is enabled. - Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact). #jira UE-45690 Change 3483146 by Phillip.Kavan #jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints. Change summary: - Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP. - Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling. - Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature. Change 3483340 by Ben.Zeigler Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets Change 3483548 by Michael.Noland Epic Friday: Playing around with some prototype traps Change 3483700 by Phillip.Kavan Fix CIS cook crash introduced by last submit. #rnx Change 3485217 by Ben.Zeigler #jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function Change 3485367 by Dan.Oconnor Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager #jira UE-45756 Change 3485565 by Ben.Zeigler #jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable Change 3485566 by Marc.Audy Fix crashes caused by undo/redo of user defined struct changes #jira UE-45775 #jira UE-45781 Change 3485805 by Michael.Noland PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev) #jira UE-43747 Change 3485807 by Michael.Noland PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers) #jira UE-44041 Change 3485811 by Michael.Noland Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level) Change 3485829 by Michael.Noland Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded Change 3485830 by Michael.Noland PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift) #jira UE-45002 Change 3486039 by Michael.Noland PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist) - Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding - Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible - Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible #jira UE-44014 Change 3486093 by Michael.Noland PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040) #jira UE-42903 Change 3486139 by Michael.Noland Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page #rn Change 3486154 by Michael.Noland Framework: Speculative fix for CIS error about FStructOnScope #rnx Change 3486180 by Dan.Oconnor Better match old logic for determining when to skip data only compile #jira UE-45830 Change 3487276 by Marc.Audy Fix crash when using Setter with a locally scoped variable #rnx Change 3487278 by Marc.Audy Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected Change 3487658 by Marc.Audy Ensure that child actor template is created for subclasses #jira UE-45985 Change 3487699 by Marc.Audy Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase Change 3487813 by Dan.Oconnor Asset demonstrating a crash Change 3488101 by Marc.Audy Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins. Correctly orphan pins when a node goes to 0 pins. Change 3488337 by Marc.Audy Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job #jira UE-46020 Change 3488512 by Dan.Oconnor ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it #jira UE-45830, UE-45965 #rnx Change 3488631 by Michael.Noland Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level #jira UE-45630 Change 3488665 by Michael.Noland Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set - The category, raw name, and tooltip of the property are now included as part of the filter text as well - The property tooltip is now displayed when hovering over the property name - Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate Change 3489324 by Marc.Audy Fix recursion causing stack crash #jira UE-46038 #rnx Change 3489326 by Marc.Audy Fix cooking crash #jira UE-46031 #rnx Change 3489687 by mason.seay Assets for testing orphan pins Change 3489701 by Marc.Audy Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin. #jira UE-46051 #jira UE-46052 #rnx Change 3490352 by Dan.Oconnor Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint #jira UE-46062 Change 3490814 by Marc.Audy Make callfunction/macro instances save all pins in orphan state more similar to previous behavior #rnx Change 3491022 by Dan.Oconnor Properly clean up 'Key' property when we fail to create a value property #jira UE-45279 Change 3491071 by Ben.Zeigler #jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory. Change 3491244 by Michael.Noland Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors) #jira UE-32948 Change 3491276 by Michael.Noland Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable) - Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places - Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item #jira UE-43372 Change 3491562 by Marc.Audy Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it #jira UE-46020 #rnx Change 3491658 by Marc.Audy Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert #rnx Change 3491946 by Marc.Audy ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented) RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible) DestroyImpl now prunes out SubPins that had already been trashed #rnx Change 3492040 by Marc.Audy Discard exec/then pins from a callfunction that has been converted to a pure node #rnx Change 3492200 by Zak.Middleton #ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. Fixes possible regression from CL 3359561 that removed the Reset(...) entirely. #jira UE-46012 Change 3492290 by Ben.Zeigler #jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed Change 3492311 by Marc.Audy Don't clear the pin type if what you're connecting to's pin type is wildcard #rnx Change 3492680 by Dan.Oconnor Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset Change 3492826 by Marc.Audy Don't do pin connection list change notifications from DestroyPins while regenerating on load #jira UE-46112 #rnx Change 3492851 by Michael.Noland Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters Change 3492852 by Michael.Noland Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class Change 3492934 by Marc.Audy Fix ensure and crash delete macro containing orphaned pin #rnx Change 3493079 by Dan.Oconnor Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..) #rnx Change 3493346 by Phillip.Kavan #jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs. Change summary: - Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values. - Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future. Change 3493938 by Michael.Noland Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable) #jira UE-45780 Change 3493945 by Michael.Noland Blueprints: Fixed GetDelegatePoperty typos #rnx Change 3493997 by Michael.Noland Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes #jira UE-45760 Change 3493998 by Dan.Oconnor Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days Change 3494025 by Michael.Noland Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES) #rnx Change 3494026 by Michael.Noland Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer - Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc... - Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed #rnx Change 3496382 by Ben.Zeigler Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress Change 3496688 by Marc.Audy Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up #jira UE-46073 Change 3496830 by Michael.Noland Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata #rnx Change 3496840 by Michael.Noland Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work) Change 3497038 by Michael.Noland Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds) - You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts) - You can also specify a set of items to grant to your local inventory when it is created Change 3497204 by Marc.Audy Fix AbilitySystemComponent not being blueprint readable. #rnx Change 3497668 by Mieszko.Zielinski Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4 #jira UE-43659 Change 3497677 by Mieszko.Zielinski Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4 Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry #jira UE-41293 Change 3497678 by Mieszko.Zielinski Marked AbstractNavData class as transient #UE4 We never want to save it to levels Change 3497679 by Mieszko.Zielinski Made NavModifierVolume responsive to editor-time property changes #UE4 #jira UE-32831 Change 3497900 by Dan.Oconnor Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level #rnx Change 3497904 by Dan.Oconnor Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct #jira UE-46153 #rnx Change 3497907 by Dan.Oconnor Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class #rnx #jira UE-46186 Change 3498218 by mason.seay Updates to pin testing BP's Change 3498323 by Mieszko.Zielinski Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4 Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers #jira UE-44891 Change 3499007 by Marc.Audy Allow systems to hook Pre and PostCompile to do custom behaviors Change 3499013 by Mieszko.Zielinski Made AbstractNavData class non-transient again #UE4 Implemented AbstractNavData instances' transientness in a different manner. #jira UE-46194 Change 3499204 by Mieszko.Zielinski Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation. #jira UE-43799 Change 3499321 by mason.seay Updated bp for struct testing Change 3499388 by Marc.Audy Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed). Change 3499390 by Marc.Audy Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted. #rnx Change 3499420 by Michael.Noland Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want: - ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully - LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully - Assert: Asserts, the calling code is not expecting to handle a failure gracefully - Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern - Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert - Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked) - Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread The typical recommended call pattern is to use something like: if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull)) { ... Do something with World } Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr. #jira UE-42458 Change 3499429 by Michael.Noland Engine: Removed a bogus TODO (the problematic code had already been reworked) #rnx Change 3499470 by Michael.Noland Core: Improved and corrected the comment for ensure() - It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?) - It now only fires once per ensure() by default, added a note about ensureAlways() #rnx Change 3499643 by Marc.Audy Use TGuardValue instead of manually managing it #rnx Change 3499874 by Marc.Audy Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log Change 3499875 by Marc.Audy When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites) #jira UE-46224 Change 3499927 by Dan.Oconnor UField::Serialize no longer serialize's its next ptr, UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker #jira UE-43458 Change 3499953 by Michael.Noland Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage) - These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions Change 3499957 by Michael.Noland Animation: Added runtime errors for nullptr ControlRigs passed into BP methods #rnx Change 3499958 by Michael.Noland Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error #rnx Change 3499959 by Michael.Noland Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints Change 3499960 by Michael.Noland AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object Change 3499968 by Michael.Noland Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues #rnx Change 3499969 by Michael.Noland Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack #rnx Change 3499973 by Michael.Noland Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject - Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget Change 3499979 by Michael.Noland Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material Change 3499984 by Michael.Noland Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected Change 3499993 by Michael.Noland Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters - This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in' - These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>) - Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS Change 3500009 by Michael.Noland Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM) #rnx Change 3500011 by Michael.Noland Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms Change 3500012 by Michael.Noland Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset Change 3500014 by Michael.Noland Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that) Change 3500019 by Michael.Noland Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters - It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments Change 3500020 by Michael.Noland Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world) Change 3501062 by Marc.Audy MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function Fix inability to undo/redo pin additions to sequence node Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used #jira UE-46164 #jira UE-46270 Change 3501330 by Michael.Noland AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place) #jira UE-46271 Change 3501356 by Marc.Audy Fix crash when multi-editing actor blueprints #jira UE-46248 Change 3501408 by Michael.Noland Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack) Change 3501457 by Phillip.Kavan #jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node. Change summary: - Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass. - Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl). - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects. Change 3502741 by Phillip.Kavan #jira UE-45782 - Fix undo for index pin type changes. Change summary: - Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed. Change 3502939 by Michael.Noland Back out changelist 3499927 Change 3503087 by Marc.Audy Re-fixed ocean content as editor had also changed so had to take theirs and redo #rnx Change 3503266 by Ben.Zeigler #jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory Change 3503325 by mason.seay updated Anim BP to prep for pin testing Change 3503445 by Marc.Audy Fix crash caused by OldPins being destroyed before rewiring #rnx Change 3505024 by Marc.Audy Fix NodeEffectsPanel blueprint as it was using pins that no longer existed #rnx Change 3505254 by Marc.Audy Don't include orphan pins when gather source property names If a property doesn't exist for a source property name just skip the property rather than crashing #jira UE-46345 #rnx Change 3506125 by Ben.Zeigler #jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place Change 3506334 by Dan.Oconnor Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints #jira UE-46411 Change 3506439 by Dan.Oconnor Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo #jira UE-46308 Change 3506468 by Dan.Oconnor Return to pre 3488512 behavior, as it causes bad default values #jira UE-46414 #rnx Change 3506733 by Marc.Audy Use the most up to date class to determine whether a property still exists when adding pins during reconstruction #jira UE-45965 #author Dan.OConnor #rnx Change 3507531 by Ben.Zeigler #jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays Change 3507924 by mason.seay Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues Change 3507962 by Marc.Audy Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958 #rnx Change 3509131 by Dan.Oconnor Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table #jira UE-46311 Change 3509345 by Marc.Audy CVar to disable orphan pins if necessary #rnx Change 3509959 by Marc.Audy Protect against crashing due to large values in Timespan From functions #jira UE-43840 Change 3510040 by Marc.Audy Remove all the old unneeded ShooterGame test maps #rnx [CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
if (Bucket != NAME_None)
{
return IFileManager::Get().DeleteDirectory(*FPaths::Combine(*PathToRAC, *Bucket.ToString()), false, true);
}
return false;
}
FRuntimeAssetCacheBucket* FRuntimeAssetCacheFilesystemBackend::PreLoadBucket(FName BucketName, int32 BucketSize)
{
FString Path = FPaths::Combine(*PathToRAC, *BucketName.ToString());
FRuntimeAssetCacheBucket* Result = new FRuntimeAssetCacheBucket(BucketSize);
class FRuntimeAssetCacheFilesystemBackendDirectoryVisitor : public IPlatformFile::FDirectoryVisitor
{
public:
FRuntimeAssetCacheFilesystemBackendDirectoryVisitor(FRuntimeAssetCacheBucket* InBucket, FName InBucketName, FRuntimeAssetCacheFilesystemBackend* InBackend)
: Bucket(InBucket)
, BucketName(InBucketName)
, Backend(InBackend)
{ }
virtual bool Visit(const TCHAR* FilenameOrDirectory, bool bIsDirectory)
{
if (bIsDirectory)
{
return true;
}
FString CacheKey = FPaths::GetBaseFilename(FilenameOrDirectory);
FArchive* Ar = Backend->CreateReadArchive(BucketName, *CacheKey);
FCacheEntryMetadata* Metadata = Backend->PreloadMetadata(Ar);
Copying //UE4/Ocean-Staging to //UE4/Dev-Main (Source: //Ocean/Main @ 3355692) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3348195 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347729 for variable shadow warning caused by CL 3347393 Change 3347935 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347393 for a runtime asset crash Change 3340537 on 2017/03/09 by James.Brinkerhoff Hotfix from CL 3338679 for arrow keys not working to navigate between elements in the details panel Change 3335755 on 2017/03/07 by Ben.Marsh Pass bCreateStubIPA into PrepForUATPackageOrDeploy rather than setting it through a global configuration object (which is no longer accessible). Change 3334652 on 2017/03/06 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3331740 Change 3332441 on 2017/03/03 by James.Brinkerhoff Hotfix from CL 3296668 for assert when creating memory reports #jira OCN-6087: [CRASH] Crash after entering the memreport command into the command line. Change 3318933 on 2017/02/23 by Allan.Bentham Temp workaround for iOS metal sRGB capable render targets sRGB correcting twice. Change 3314064 on 2017/02/21 by Richard.Fawcett Implement randomized manifest filenames for Ocean. Change 3313139 on 2017/02/20 by James.Brinkerhoff Hotfix from CL 3262052 for UE-40782 Put back the skinxx workflow for the staticmesh Change 3292678 on 2017/02/08 by Brian.Zaugg Back out changelist 3292455 Change 3292455 on 2017/02/08 by Brian.Zaugg Back out changelist 3292268 Change 3292268 on 2017/02/08 by Allan.Bentham Restore DestStride output value when locking compressed textures. Change 3288925 on 2017/02/06 by Brian.Zaugg Change this error from a check to an error log: "Loading non-streamed mips from an external bulk file. This is not desireable." Change 3288441 on 2017/02/06 by James.Brinkerhoff Hotfix from CL 3255451 for UE-40384: Reference Viewer comment text is difficult to read #jira OCN-6059: CLONE - Comment boxes are turning opaque when the game is running Change 3285501 on 2017/02/03 by Allan.Bentham Fix for ring buffer not allocating sufficient space for large requests. Change 3280062 on 2017/01/31 by Max.Chen Sequencer: Find object in any package. This fixes an issue where bound objects can't be found. #jira UE-39459 Change 3279375 on 2017/01/31 by Brian.Zaugg Increase TaskGraph thread stack size for non-shipping builds to prevent stack overflow on iOS. Change 3279366 on 2017/01/31 by Brian.Zaugg Fix for iOS virtual keyboard. Change 3275965 on 2017/01/27 by Max.Chen Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence Copy from Release-4.15 #jira UE-40234 Change 3275963 on 2017/01/27 by Max.Chen Sequencer: Fixed crash caused by lingering persistent evaluation data Copy from Release-4.15 #jira UE-40064 Change 3275962 on 2017/01/27 by Max.Chen Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer Copy from Release-4.15 #jira UE-39882 Change 3275523 on 2017/01/27 by James.Brinkerhoff Fix issue with automation tool caused by a bad resolve Change 3274292 on 2017/01/26 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3269883 Change 3252898 on 2017/01/10 by James.Brinkerhoff Hotfix from CL 3187276 for UE-39071: Crash on adding Actor Reference property to a Struct Change 3248463 on 2017/01/05 by Aaron.McLeran Implementing UE-39421 fix into Ocean Change 3247933 on 2017/01/05 by James.Brinkerhoff Hotfix from CL 3246828 for UE-39249: Particle effects only render in one eye for VR Change 3242274 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209235 for UE-16688 - Selection and selection highlight doesn't work on child actors Change 3242273 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209232 for making the function GetComponents optionally include components in child actors Also fixed a circular dependency due to the hotfix (already applied in UE4 Main) Change 3240035 on 2016/12/19 by Jaren.Peterson MovieSceneEventTemplate - Renamed FEventData to FMovieSceneEventData to eliminate confusion and clear up a crash occuring in Ocean debug builds. Change 3236490 on 2016/12/15 by Chad.Garyet Updating packaged build to not make a stub. This was stopping all icons from making it into the .ipa and messing up the resolution settings. also cleaned up the local staging directories. Change 3231487 on 2016/12/12 by Brian.Zaugg Maintain aspect ratio when render target is clamped. Change 3229050 on 2016/12/09 by Brian.Zaugg #ocn - Hotfix from CL 3218104. Fixes code signing errors related to iCloud support. Change 3225632 on 2016/12/07 by Brian.Zaugg New Chair Entertainment Group iOS Distribution certificate .p12. Change 3224015 on 2016/12/06 by Brian.Zaugg #ocn - Hotfix from CL 3223546 fixes iOS audio crash after last merge from main. Change 3221665 on 2016/12/05 by James.Brinkerhoff Merging hotfixes from //UE4/Ocean-Staging to //Ocean/Main Hotfix from CL 3216832 for non-unity build failures Hotfix from CL 3217564 for fixing the FixDylib script being run on too many modules. Mac build farm is oversaturated right now. Change 3217759 on 2016/12/01 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ 3215855 Change 3214085 on 2016/11/29 by Casey.Spencer Removed logic in K2Node_BaseAsyncTask that excluded properties defined on super classes. Check with engine team prior to making change. [CL 3359832 by James Brinkerhoff in Main branch]
2017-03-23 02:04:59 -04:00
Files.Add(TFilenameMetadataPair(*FPaths::GetBaseFilename(FilenameOrDirectory), Metadata));
delete Ar;
return true;
}
Copying //UE4/Ocean-Staging to //UE4/Dev-Main (Source: //Ocean/Main @ 3355692) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3348195 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347729 for variable shadow warning caused by CL 3347393 Change 3347935 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347393 for a runtime asset crash Change 3340537 on 2017/03/09 by James.Brinkerhoff Hotfix from CL 3338679 for arrow keys not working to navigate between elements in the details panel Change 3335755 on 2017/03/07 by Ben.Marsh Pass bCreateStubIPA into PrepForUATPackageOrDeploy rather than setting it through a global configuration object (which is no longer accessible). Change 3334652 on 2017/03/06 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3331740 Change 3332441 on 2017/03/03 by James.Brinkerhoff Hotfix from CL 3296668 for assert when creating memory reports #jira OCN-6087: [CRASH] Crash after entering the memreport command into the command line. Change 3318933 on 2017/02/23 by Allan.Bentham Temp workaround for iOS metal sRGB capable render targets sRGB correcting twice. Change 3314064 on 2017/02/21 by Richard.Fawcett Implement randomized manifest filenames for Ocean. Change 3313139 on 2017/02/20 by James.Brinkerhoff Hotfix from CL 3262052 for UE-40782 Put back the skinxx workflow for the staticmesh Change 3292678 on 2017/02/08 by Brian.Zaugg Back out changelist 3292455 Change 3292455 on 2017/02/08 by Brian.Zaugg Back out changelist 3292268 Change 3292268 on 2017/02/08 by Allan.Bentham Restore DestStride output value when locking compressed textures. Change 3288925 on 2017/02/06 by Brian.Zaugg Change this error from a check to an error log: "Loading non-streamed mips from an external bulk file. This is not desireable." Change 3288441 on 2017/02/06 by James.Brinkerhoff Hotfix from CL 3255451 for UE-40384: Reference Viewer comment text is difficult to read #jira OCN-6059: CLONE - Comment boxes are turning opaque when the game is running Change 3285501 on 2017/02/03 by Allan.Bentham Fix for ring buffer not allocating sufficient space for large requests. Change 3280062 on 2017/01/31 by Max.Chen Sequencer: Find object in any package. This fixes an issue where bound objects can't be found. #jira UE-39459 Change 3279375 on 2017/01/31 by Brian.Zaugg Increase TaskGraph thread stack size for non-shipping builds to prevent stack overflow on iOS. Change 3279366 on 2017/01/31 by Brian.Zaugg Fix for iOS virtual keyboard. Change 3275965 on 2017/01/27 by Max.Chen Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence Copy from Release-4.15 #jira UE-40234 Change 3275963 on 2017/01/27 by Max.Chen Sequencer: Fixed crash caused by lingering persistent evaluation data Copy from Release-4.15 #jira UE-40064 Change 3275962 on 2017/01/27 by Max.Chen Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer Copy from Release-4.15 #jira UE-39882 Change 3275523 on 2017/01/27 by James.Brinkerhoff Fix issue with automation tool caused by a bad resolve Change 3274292 on 2017/01/26 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3269883 Change 3252898 on 2017/01/10 by James.Brinkerhoff Hotfix from CL 3187276 for UE-39071: Crash on adding Actor Reference property to a Struct Change 3248463 on 2017/01/05 by Aaron.McLeran Implementing UE-39421 fix into Ocean Change 3247933 on 2017/01/05 by James.Brinkerhoff Hotfix from CL 3246828 for UE-39249: Particle effects only render in one eye for VR Change 3242274 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209235 for UE-16688 - Selection and selection highlight doesn't work on child actors Change 3242273 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209232 for making the function GetComponents optionally include components in child actors Also fixed a circular dependency due to the hotfix (already applied in UE4 Main) Change 3240035 on 2016/12/19 by Jaren.Peterson MovieSceneEventTemplate - Renamed FEventData to FMovieSceneEventData to eliminate confusion and clear up a crash occuring in Ocean debug builds. Change 3236490 on 2016/12/15 by Chad.Garyet Updating packaged build to not make a stub. This was stopping all icons from making it into the .ipa and messing up the resolution settings. also cleaned up the local staging directories. Change 3231487 on 2016/12/12 by Brian.Zaugg Maintain aspect ratio when render target is clamped. Change 3229050 on 2016/12/09 by Brian.Zaugg #ocn - Hotfix from CL 3218104. Fixes code signing errors related to iCloud support. Change 3225632 on 2016/12/07 by Brian.Zaugg New Chair Entertainment Group iOS Distribution certificate .p12. Change 3224015 on 2016/12/06 by Brian.Zaugg #ocn - Hotfix from CL 3223546 fixes iOS audio crash after last merge from main. Change 3221665 on 2016/12/05 by James.Brinkerhoff Merging hotfixes from //UE4/Ocean-Staging to //Ocean/Main Hotfix from CL 3216832 for non-unity build failures Hotfix from CL 3217564 for fixing the FixDylib script being run on too many modules. Mac build farm is oversaturated right now. Change 3217759 on 2016/12/01 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ 3215855 Change 3214085 on 2016/11/29 by Casey.Spencer Removed logic in K2Node_BaseAsyncTask that excluded properties defined on super classes. Check with engine team prior to making change. [CL 3359832 by James Brinkerhoff in Main branch]
2017-03-23 02:04:59 -04:00
void Finalize()
{
Files.Sort([](const TFilenameMetadataPair& A, const TFilenameMetadataPair& B) { return A.Get<1>()->GetLastAccessTime() > B.Get<1>()->GetLastAccessTime(); });
int32 CurrentFileIndex = 0;
for (; CurrentFileIndex < Files.Num(); ++CurrentFileIndex)
{
FName Name = Files[CurrentFileIndex].Get<0>();
FCacheEntryMetadata* Metadata = Files[CurrentFileIndex].Get<1>();
if ((Bucket->GetCurrentSize() + Metadata->GetCachedAssetSize()) <= Bucket->GetSize())
{
Bucket->AddMetadataEntry(Name.ToString(), Metadata, true);
}
else
{
// No space left. Stop adding entries to the bucket, and all the rest of the older files
break;
}
}
for (; CurrentFileIndex < Files.Num(); ++CurrentFileIndex)
{
FName Name = Files[CurrentFileIndex].Get<0>();
FCacheEntryMetadata* Metadata = Files[CurrentFileIndex].Get<1>();
Backend->RemoveCacheEntry(BucketName, *Name.ToString());
delete Metadata;
}
}
private:
FRuntimeAssetCacheBucket* Bucket;
FName BucketName;
FRuntimeAssetCacheFilesystemBackend* Backend;
Copying //UE4/Ocean-Staging to //UE4/Dev-Main (Source: //Ocean/Main @ 3355692) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3348195 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347729 for variable shadow warning caused by CL 3347393 Change 3347935 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347393 for a runtime asset crash Change 3340537 on 2017/03/09 by James.Brinkerhoff Hotfix from CL 3338679 for arrow keys not working to navigate between elements in the details panel Change 3335755 on 2017/03/07 by Ben.Marsh Pass bCreateStubIPA into PrepForUATPackageOrDeploy rather than setting it through a global configuration object (which is no longer accessible). Change 3334652 on 2017/03/06 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3331740 Change 3332441 on 2017/03/03 by James.Brinkerhoff Hotfix from CL 3296668 for assert when creating memory reports #jira OCN-6087: [CRASH] Crash after entering the memreport command into the command line. Change 3318933 on 2017/02/23 by Allan.Bentham Temp workaround for iOS metal sRGB capable render targets sRGB correcting twice. Change 3314064 on 2017/02/21 by Richard.Fawcett Implement randomized manifest filenames for Ocean. Change 3313139 on 2017/02/20 by James.Brinkerhoff Hotfix from CL 3262052 for UE-40782 Put back the skinxx workflow for the staticmesh Change 3292678 on 2017/02/08 by Brian.Zaugg Back out changelist 3292455 Change 3292455 on 2017/02/08 by Brian.Zaugg Back out changelist 3292268 Change 3292268 on 2017/02/08 by Allan.Bentham Restore DestStride output value when locking compressed textures. Change 3288925 on 2017/02/06 by Brian.Zaugg Change this error from a check to an error log: "Loading non-streamed mips from an external bulk file. This is not desireable." Change 3288441 on 2017/02/06 by James.Brinkerhoff Hotfix from CL 3255451 for UE-40384: Reference Viewer comment text is difficult to read #jira OCN-6059: CLONE - Comment boxes are turning opaque when the game is running Change 3285501 on 2017/02/03 by Allan.Bentham Fix for ring buffer not allocating sufficient space for large requests. Change 3280062 on 2017/01/31 by Max.Chen Sequencer: Find object in any package. This fixes an issue where bound objects can't be found. #jira UE-39459 Change 3279375 on 2017/01/31 by Brian.Zaugg Increase TaskGraph thread stack size for non-shipping builds to prevent stack overflow on iOS. Change 3279366 on 2017/01/31 by Brian.Zaugg Fix for iOS virtual keyboard. Change 3275965 on 2017/01/27 by Max.Chen Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence Copy from Release-4.15 #jira UE-40234 Change 3275963 on 2017/01/27 by Max.Chen Sequencer: Fixed crash caused by lingering persistent evaluation data Copy from Release-4.15 #jira UE-40064 Change 3275962 on 2017/01/27 by Max.Chen Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer Copy from Release-4.15 #jira UE-39882 Change 3275523 on 2017/01/27 by James.Brinkerhoff Fix issue with automation tool caused by a bad resolve Change 3274292 on 2017/01/26 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3269883 Change 3252898 on 2017/01/10 by James.Brinkerhoff Hotfix from CL 3187276 for UE-39071: Crash on adding Actor Reference property to a Struct Change 3248463 on 2017/01/05 by Aaron.McLeran Implementing UE-39421 fix into Ocean Change 3247933 on 2017/01/05 by James.Brinkerhoff Hotfix from CL 3246828 for UE-39249: Particle effects only render in one eye for VR Change 3242274 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209235 for UE-16688 - Selection and selection highlight doesn't work on child actors Change 3242273 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209232 for making the function GetComponents optionally include components in child actors Also fixed a circular dependency due to the hotfix (already applied in UE4 Main) Change 3240035 on 2016/12/19 by Jaren.Peterson MovieSceneEventTemplate - Renamed FEventData to FMovieSceneEventData to eliminate confusion and clear up a crash occuring in Ocean debug builds. Change 3236490 on 2016/12/15 by Chad.Garyet Updating packaged build to not make a stub. This was stopping all icons from making it into the .ipa and messing up the resolution settings. also cleaned up the local staging directories. Change 3231487 on 2016/12/12 by Brian.Zaugg Maintain aspect ratio when render target is clamped. Change 3229050 on 2016/12/09 by Brian.Zaugg #ocn - Hotfix from CL 3218104. Fixes code signing errors related to iCloud support. Change 3225632 on 2016/12/07 by Brian.Zaugg New Chair Entertainment Group iOS Distribution certificate .p12. Change 3224015 on 2016/12/06 by Brian.Zaugg #ocn - Hotfix from CL 3223546 fixes iOS audio crash after last merge from main. Change 3221665 on 2016/12/05 by James.Brinkerhoff Merging hotfixes from //UE4/Ocean-Staging to //Ocean/Main Hotfix from CL 3216832 for non-unity build failures Hotfix from CL 3217564 for fixing the FixDylib script being run on too many modules. Mac build farm is oversaturated right now. Change 3217759 on 2016/12/01 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ 3215855 Change 3214085 on 2016/11/29 by Casey.Spencer Removed logic in K2Node_BaseAsyncTask that excluded properties defined on super classes. Check with engine team prior to making change. [CL 3359832 by James Brinkerhoff in Main branch]
2017-03-23 02:04:59 -04:00
typedef TTuple<FName, FCacheEntryMetadata*> TFilenameMetadataPair;
TArray<TFilenameMetadataPair> Files;
} Visitor(Result, BucketName, this);
IFileManager::Get().IterateDirectory(*Path, Visitor);
Copying //UE4/Ocean-Staging to //UE4/Dev-Main (Source: //Ocean/Main @ 3355692) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3348195 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347729 for variable shadow warning caused by CL 3347393 Change 3347935 on 2017/03/15 by James.Brinkerhoff Hotfix from CL 3347393 for a runtime asset crash Change 3340537 on 2017/03/09 by James.Brinkerhoff Hotfix from CL 3338679 for arrow keys not working to navigate between elements in the details panel Change 3335755 on 2017/03/07 by Ben.Marsh Pass bCreateStubIPA into PrepForUATPackageOrDeploy rather than setting it through a global configuration object (which is no longer accessible). Change 3334652 on 2017/03/06 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3331740 Change 3332441 on 2017/03/03 by James.Brinkerhoff Hotfix from CL 3296668 for assert when creating memory reports #jira OCN-6087: [CRASH] Crash after entering the memreport command into the command line. Change 3318933 on 2017/02/23 by Allan.Bentham Temp workaround for iOS metal sRGB capable render targets sRGB correcting twice. Change 3314064 on 2017/02/21 by Richard.Fawcett Implement randomized manifest filenames for Ocean. Change 3313139 on 2017/02/20 by James.Brinkerhoff Hotfix from CL 3262052 for UE-40782 Put back the skinxx workflow for the staticmesh Change 3292678 on 2017/02/08 by Brian.Zaugg Back out changelist 3292455 Change 3292455 on 2017/02/08 by Brian.Zaugg Back out changelist 3292268 Change 3292268 on 2017/02/08 by Allan.Bentham Restore DestStride output value when locking compressed textures. Change 3288925 on 2017/02/06 by Brian.Zaugg Change this error from a check to an error log: "Loading non-streamed mips from an external bulk file. This is not desireable." Change 3288441 on 2017/02/06 by James.Brinkerhoff Hotfix from CL 3255451 for UE-40384: Reference Viewer comment text is difficult to read #jira OCN-6059: CLONE - Comment boxes are turning opaque when the game is running Change 3285501 on 2017/02/03 by Allan.Bentham Fix for ring buffer not allocating sufficient space for large requests. Change 3280062 on 2017/01/31 by Max.Chen Sequencer: Find object in any package. This fixes an issue where bound objects can't be found. #jira UE-39459 Change 3279375 on 2017/01/31 by Brian.Zaugg Increase TaskGraph thread stack size for non-shipping builds to prevent stack overflow on iOS. Change 3279366 on 2017/01/31 by Brian.Zaugg Fix for iOS virtual keyboard. Change 3275965 on 2017/01/27 by Max.Chen Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence Copy from Release-4.15 #jira UE-40234 Change 3275963 on 2017/01/27 by Max.Chen Sequencer: Fixed crash caused by lingering persistent evaluation data Copy from Release-4.15 #jira UE-40064 Change 3275962 on 2017/01/27 by Max.Chen Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer Copy from Release-4.15 #jira UE-39882 Change 3275523 on 2017/01/27 by James.Brinkerhoff Fix issue with automation tool caused by a bad resolve Change 3274292 on 2017/01/26 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ CL 3269883 Change 3252898 on 2017/01/10 by James.Brinkerhoff Hotfix from CL 3187276 for UE-39071: Crash on adding Actor Reference property to a Struct Change 3248463 on 2017/01/05 by Aaron.McLeran Implementing UE-39421 fix into Ocean Change 3247933 on 2017/01/05 by James.Brinkerhoff Hotfix from CL 3246828 for UE-39249: Particle effects only render in one eye for VR Change 3242274 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209235 for UE-16688 - Selection and selection highlight doesn't work on child actors Change 3242273 on 2016/12/21 by James.Brinkerhoff Hotfix from CL 3209232 for making the function GetComponents optionally include components in child actors Also fixed a circular dependency due to the hotfix (already applied in UE4 Main) Change 3240035 on 2016/12/19 by Jaren.Peterson MovieSceneEventTemplate - Renamed FEventData to FMovieSceneEventData to eliminate confusion and clear up a crash occuring in Ocean debug builds. Change 3236490 on 2016/12/15 by Chad.Garyet Updating packaged build to not make a stub. This was stopping all icons from making it into the .ipa and messing up the resolution settings. also cleaned up the local staging directories. Change 3231487 on 2016/12/12 by Brian.Zaugg Maintain aspect ratio when render target is clamped. Change 3229050 on 2016/12/09 by Brian.Zaugg #ocn - Hotfix from CL 3218104. Fixes code signing errors related to iCloud support. Change 3225632 on 2016/12/07 by Brian.Zaugg New Chair Entertainment Group iOS Distribution certificate .p12. Change 3224015 on 2016/12/06 by Brian.Zaugg #ocn - Hotfix from CL 3223546 fixes iOS audio crash after last merge from main. Change 3221665 on 2016/12/05 by James.Brinkerhoff Merging hotfixes from //UE4/Ocean-Staging to //Ocean/Main Hotfix from CL 3216832 for non-unity build failures Hotfix from CL 3217564 for fixing the FixDylib script being run on too many modules. Mac build farm is oversaturated right now. Change 3217759 on 2016/12/01 by James.Brinkerhoff Merging //UE4/Ocean-Staging to //Ocean/Main @ 3215855 Change 3214085 on 2016/11/29 by Casey.Spencer Removed logic in K2Node_BaseAsyncTask that excluded properties defined on super classes. Check with engine team prior to making change. [CL 3359832 by James Brinkerhoff in Main branch]
2017-03-23 02:04:59 -04:00
Visitor.Finalize();
return Result;
}