Commit Graph

356 Commits

Author SHA1 Message Date
Robert Manuszewski
5925a19dc9 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3125172)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3053250 on 2016/07/18 by Steve.Robb

	TNot metafunction added.

Change 3053252 on 2016/07/18 by Steve.Robb

	New TIsEnumClass trait.

Change 3061345 on 2016/07/22 by Robert.Manuszewski

	Changing FMallocStomp::GetAllocationSize() to return the requested allocation size instead of the physical allocation size to make FMallocStomp work properly with FMallocPoisonProxy

Change 3061377 on 2016/07/22 by Graeme.Thornton

	Added bStripAnimationDataOnDedicatedServer option to UAnimationSettings which will remove all compressed data from cooked server data. Disabled by default

Change 3064592 on 2016/07/26 by Steven.Hutton

	Uploading repository files

Change 3064595 on 2016/07/26 by Steven.Hutton

	Assign crashes to buggs based not just on Callstack but also based on Error message.

	Error messages have "data" masked out and are then compared to a table of  error messages to find similar messages. Ensures are not currently filtered by error message.

Change 3066046 on 2016/07/27 by Graeme.Thornton

	Better dedicated client/server class exclusion during cooking
	 - Add class lists to cooker settings so they can be modified in the editor

Change 3066077 on 2016/07/27 by Graeme.Thornton

	Move Paragon NeedsLoadForServer calls over to the new config based system

Change 3066203 on 2016/07/27 by Chris.Wood

	CrashReportProcess logging and Slack reporting improvements to monitor disk space.
	[UE-31129] - Crash Report server need to alert on Slack when the PDB cache is full

Change 3066276 on 2016/07/27 by Graeme.Thornton

	Move simple NeedsLoadForClient implementations over to new config based system

Change 3068019 on 2016/07/28 by Graeme.Thornton

	Don't call ReleaseResources on UStaticMesh if we never render, and therefore never actually initialize the resources
	 - Corrects some bad stats

Change 3068218 on 2016/07/28 by Chris.Wood

	CrashReportProcess 1.1.18 passes BuildVersion to MinidumpDiagnostics
	[UE-31706] - Add new BuildVersion string to crash context and website

	Also modified command line log file ini settings to stop MDD stalling trying to sort and delete its logs.

Change 3071665 on 2016/08/01 by Robert.Manuszewski

	Moving RemoveNamesFromMasterList from UEnum destructor to BeginDestroy to avoid potential issues when its package has already been destroyed.

Change 3073388 on 2016/08/02 by Graeme.Thornton

	Invalidate string asset reference tags after finishing up loading of an async package

Change 3073745 on 2016/08/02 by Robert.Manuszewski

	Disabling logging to memory in shipping by default. From now on FOutputDeviceMemory will be an opt-in for games.

	#jira FORT-27839

Change 3074866 on 2016/08/03 by Robert.Manuszewski

	PR #2650: Fixed a bug where newline escape sequence wasnt written to the pipe (Contributed by ozturkhakki)

Change 3075128 on 2016/08/03 by Steve.Robb

	Static analysis fixes: error C2065: 'ThisOuterWorld': undeclared identifier

Change 3075130 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LODLevel'

Change 3075131 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Owner'

Change 3075235 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'AnimToOperateOn'

Change 3075248 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ParentProfile'

Change 3075662 on 2016/08/03 by Steve.Robb

	Static analysis/buffer size fix: warning C28020: The expression '_Param_(7)>=sizeof(ICMP_ECHO_REPLY)+_Param_(4)+8' is not true at this call

Change 3075668 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6326: Potential comparison of a constant with another constant

Change 3075679 on 2016/08/03 by Chris.Wood

	Added -NoTrimCallstack command line arg to MDD calls from CRP 1.1.19
	[OR-26335] - 29.1 crash reporter generating reports with no callstacks / info

	New MDD has -NoTrimCallstack option to leave possibly irrelevant entires in the stack. Trimming is somewhat arbitrary and based on string matching. I'd rather see the whole thing.

Change 3077070 on 2016/08/04 by Steve.Robb

	Dead array slack tracking code removed.

Change 3077113 on 2016/08/04 by Steve.Robb

	TEnumAsByte is now deprecated for enum classes.
	All current uses fixed (which tidies up that code anyway).
	New FArchive::op<< for enum classes.
	Generated code now never uses TEnumAsByte for enum classes.

Change 3077117 on 2016/08/04 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'DefaultSettings'

Change 3078709 on 2016/08/05 by Steve.Robb

	FUNCTION_NO_NULL_RETURN_* macros added to statically annotate a function to say that it never returns a null pointer.
	TObjectIterator annotated to never return null.
	NewObject annotated to never return null.

Change 3078836 on 2016/08/05 by Graeme.Thornton

	Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading

Change 3082217 on 2016/08/09 by Steve.Robb

	Missing #include for FUniqueNetIdRepl added.

Change 3083679 on 2016/08/10 by Chris.Wood

	CrashReportProcess performance improvements. CRP v1.1.22
	[UE-34402] - Crash Reporter: Improve CRP performance by allowing multiple MDD instances
	[UE-34403] - Crash Reporter: CRP should throw away crashes when backlog is too large to avoid runaway

	Passing lock details to MDD on command line and managing multiple MDD tasks in CRP.
	Configurable values for range of queue sizes that cause us to throw away crashes.

Change 3085362 on 2016/08/11 by Steve.Robb

	Rule-of-three fixes for FAIMessageObserver, to prevent accidents.

	From here: https://udn.unrealengine.com/questions/306507/tstaticarray-doesnt-call-destructor-on-elements-be.html

Change 3085396 on 2016/08/11 by Steve.Robb

	Swap can now be configured via the TUseBitwiseSwap trait to not use Memswap, which can be less optimal for certain types.

Change 3088840 on 2016/08/15 by Steve.Robb

	TRemoveReference moved to its own header.

Change 3088858 on 2016/08/15 by Steve.Robb

	TDecay moved to its own header.

Change 3088963 on 2016/08/15 by Steve.Robb

	Invoke function, for doing a generic call on a generic callable thing.  Equivalent to std::invoke.

Change 3089144 on 2016/08/15 by Steve.Robb

	Algo::Transform updated to use Invoke.  Algorithm tests updated to test the new features.

Change 3089147 on 2016/08/15 by Steve.Robb

	TLess and TGreater moved to their own headers and defaulted to void as a type-deducing version, as per std::.

Change 3090243 on 2016/08/16 by Steve.Robb

	New Algo::Sort and Algo::SortBy algorithms.

Change 3090387 on 2016/08/16 by Steve.Robb

	Improved bitwise swapping for Swap.

	See: https://udn.unrealengine.com/questions/306922/swap-is-painfully-slow.html

Change 3090444 on 2016/08/16 by Steve.Robb

	Ptr+Size overloads removed after discussion - MakeArrayView should be used instead.

Change 3090495 on 2016/08/16 by Steve.Robb

	Assert when FString::Mid is passed a negative count.

	#jira UE-18756

Change 3093455 on 2016/08/18 by Steve.Robb

	Debuggability and efficiency improvements to UScriptStruct::DeferCppStructOps.

Change 3094476 on 2016/08/19 by Steve.Robb

	BOM removed from InvariantCulture.h.

Change 3094697 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 3094702 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Interactor'.

Change 3094715 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6385: Reading invalid data from 'Order':  the readable size is '256' bytes, but '8160' bytes may be read.

Change 3094737 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'OwnedComponent'.
	warning C28182: Dereferencing NULL pointer. 'Child' contains the same NULL value as 'AttachToComponent' did.

Change 3094750 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'.

Change 3094768 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'LevelSequence'.
	warning C6011: Dereferencing NULL pointer 'Actor'.

Change 3094774 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CallFunctionNode'.

Change 3094783 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TargetPin'.

Change 3094807 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceClass'.

Change 3094815 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'VarNode'.
	warning C6011: Dereferencing NULL pointer 'SourceClass'.

Change 3094840 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'TunnelGraph'.
	warning C28182: Dereferencing NULL pointer. 'GraphNode' contains the same NULL value as 'SourceNode' did.

Change 3094864 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.

Change 3094880 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'PrevIfIndexMatchesStatement'.

Change 3094886 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnBlueprintPin'.

Change 3094903 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'K2Node'.

Change 3094916 on 2016/08/19 by Steve.Robb

	Static analysis fix: Dereferencing NULL pointer 'CompilerContext'.

Change 3094931 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'VariablePin'.

Change 3094935 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'.

Change 3094943 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Pin'.
	warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'TargetGraph' did.

Change 3094960 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastOutPin'.

Change 3095046 on 2016/08/19 by Steve.Robb

	Single parameter version of CastChecked tagged to never return null.

Change 3095054 on 2016/08/19 by Steve.Robb

	Committed wrong version in CL# 3095046.

Change 3095089 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts
	warning C6101: Returning uninitialized memory '*lpdwExitCode'.

Change 3096035 on 2016/08/22 by Steve.Robb

	Fix for static lighting in pixel inspector.

Change 3096039 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'World'.

Change 3096045 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'.

Change 3096058 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OtherPin'.

Change 3096059 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'MainMesh'.

Change 3096066 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceType'.

Change 3096070 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastPushStatement'.

Change 3096074 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OriginalDataTableInPin'.

Change 3096075 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'.

Change 3096081 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'RunningPlatformData'.

Change 3096156 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'BP'.
	warning C6011: Dereferencing NULL pointer 'Object'.

Change 3096308 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'TopMipData'.
	warning C6011: Dereferencing NULL pointer 'MipCoverageData[0]'.

Change 3096315 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'OldParent'.
	warning C6011: Dereferencing NULL pointer 'TestExecutionInfo'.

Change 3096318 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OwnerClass'.

Change 3096322 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshInstanceData'.

Change 3096337 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Pin'.
	warning C6011: Dereferencing NULL pointer 'SpawnVarPin'.

Change 3096345 on 2016/08/22 by Steve.Robb

	Static analysis fixes: warning C6246: Local declaration of 'NumTris' hides declaration of the same name in outer scope.

Change 3096356 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'InWorld'.

Change 3096387 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ExpressionPreviewMaterial'.
	warning C6011: Dereferencing NULL pointer 'MaterialNode->MaterialExpression'.

Change 3096400 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'FunctionInputs'.

Change 3096413 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'LODPackage' contains the same NULL value as 'AssetsOuter' did.

Change 3096416 on 2016/08/22 by Steve.Robb

	Static analysis fixes: warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 3096423 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'RedirectorRefs.Redirector'.

Change 3096439 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'NewObject'.

Change 3096446 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'BaseClass'.

Change 3096454 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldSkeleton'.

Change 3096464 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'MyNode'.

Change 3096469 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'VRInteractor'.

Change 3097559 on 2016/08/23 by Steve.Robb

	Alternate fix to CL# 3096439.

Change 3097583 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'SourceCategoryEnum'.
	warning C6011: Dereferencing NULL pointer 'CurrentWorld'.

Change 3097584 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LocalizationTarget'.

Change 3097585 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'VariableSetNode' contains the same NULL value as 'AssignmentNode' did.
	warning C6011: Dereferencing NULL pointer 'FirstNativeClass'.

Change 3097588 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OutputObjClass'.

Change 3097589 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Term' contains the same NULL value as 'RValueTerm' did.

Change 3097591 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Schema'.

Change 3097597 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LayerInfo'.

Change 3097598 on 2016/08/23 by Steve.Robb

	Const-correctness fix for ILandscapeEditorModule::GetHeightmapFormatByExtension and ILandscapeEditorModule::GetWeightmapFormatByExtension.

Change 3097600 on 2016/08/23 by Steve.Robb

	Fix for incorrect null check.

Change 3097605 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'TexDataPtr'.

	Bug filed here: https://connect.microsoft.com/VisualStudio/feedback/details/3078125

Change 3097609 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'BaseClass' did.

Change 3097613 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'InEdGraph'.

Change 3097620 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThisScalableFloat'.

Change 3097627 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'AnimBlueprint'.

Change 3097629 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Pin' contains the same NULL value as 'PoseNet' did.

Change 3097631 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'IPOverlayInfo.Brush'.

Change 3097634 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Survey'.

Change 3097639 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Settings'.

Change 3097650 on 2016/08/23 by Steve.Robb

	Alternate fix for CL# 3097597.

Change 3097725 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'BodySetup'.

Change 3097764 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'FoundMode' contains the same NULL value as 'ElementType * FoundMode=LoopModes.FindByPredicate(<lambda>)' did.

Change 3097770 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Triangle'.

Change 3097775 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurGroup'.

Change 3097796 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceComponent'.

Change 3097797 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'HitComponent'.

Change 3097843 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: Dereferencing NULL pointer. 'MatchingNewPin' contains the same NULL value as 'UEdGraphPin ** MatchingNewPin=this->Pins.FindByPredicate(<lambda>)' did.

Change 3097864 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ObjectClass'.
	warning C6011: Dereferencing NULL pointer 'Client'.

Change 3097871 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'SMLightingMesh->StaticMesh' contains the same NULL value as 'StaticMesh' did.

Change 3098015 on 2016/08/23 by Steve.Robb

	Alternative fix for CL# 3094864.

Change 3098024 on 2016/08/23 by Steve.Robb

	Alternative fix for CL# 3094943.

Change 3098052 on 2016/08/23 by Steve.Robb

	Alternative fix for CL# 3094886.

Change 3098080 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'PrimitiveComponent' contains the same NULL value as 'ReplacementComponent' did.

Change 3098102 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'IndexTermPtr'.

Change 3098148 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Node'.
	warning C6011: Dereferencing NULL pointer 'OldNode'.
	warning C6011: Dereferencing NULL pointer 'LinkedPin'.
	warning C6011: Dereferencing NULL pointer 'RootNode'.

Change 3098156 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'BTGraphNode'.

Change 3098176 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'NewSection'.

Change 3098182 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Sprite'.

Change 3098197 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'.
	Coding standards fixes.

Change 3098202 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ExistingEventNode'.

Change 3098208 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'GraphNew' did.
	warning C28182: Dereferencing NULL pointer. 'GoodGraph' contains the same NULL value as 'GraphNew' did.

Change 3098229 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'.

Change 3099188 on 2016/08/24 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'.

Change 3099195 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'NodeProperty'.

Change 3099205 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'VarDesc'.

Change 3099228 on 2016/08/24 by Steve.Robb

	Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'ParentNode' did.

Change 3099539 on 2016/08/24 by Steve.Robb

	Spurious static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'InBlueprint'.
	warning C28182: Dereferencing NULL pointer. 'TestObj' contains the same NULL value as 'TestOuter' did.

	https://connect.microsoft.com/VisualStudio/feedback/details/3082362
	https://connect.microsoft.com/VisualStudio/feedback/details/3082622

Change 3099546 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldNode'.

Change 3099561 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ReferencedObject'.

Change 3099571 on 2016/08/24 by Steve.Robb

	Static analysis fix: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'CommonBaseClass' did.

Change 3099600 on 2016/08/24 by Steve.Robb

	Static analysis fix:

	warning C6385: Reading invalid data from 'this->Packages':  the readable size is '24' bytes, but '32' bytes may be read.
	warning C6385: Reading invalid data from 'Diff.ObjectSets':  the readable size is '24' bytes, but '32' bytes may be read.
	warning C6386: Buffer overrun while writing to 'Objects':  the writable size is '24' bytes, but '32' bytes might be written.

Change 3099912 on 2016/08/24 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'.

Change 3099923 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThumbnailInfo'.

Change 3100977 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory '*VectorRef'.
	warning C6001: Using uninitialized memory '*PointRef'.
	warning C6001: Using uninitialized memory '*PolyRef'.

	Coding standard fixes.

Change 3100985 on 2016/08/25 by Steve.Robb

	Static analyis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.

Change 3100987 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C28183: 'Resources.BitmapHandle' could be '0', and is a copy of the value found in 'CreateDIBSection()`829':  this does not adhere to the specification for the function 'SelectObject'.
	warning C6387: '_Param_(4)' could be '0':  this does not adhere to the specification for the function 'CreateDIBSection'.

Change 3100992 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 3101000 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory 'tmpMemReq'.
	warning C6001: Using uninitialized memory 'TmpCreateInfo'.

Change 3101004 on 2016/08/25 by Steve.Robb

	warning C28182: Dereferencing NULL pointer. 'FoliageActor' contains the same NULL value as 'Actor' did.

Change 3101009 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshComponent'.

Change 3101115 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Canvas'.

Change 3101120 on 2016/08/25 by Steve.Robb

	Fixes to previous fixes.

Change 3101128 on 2016/08/25 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Stream'.

Change 3101281 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6262: Function uses '99256' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.
	warning C6001: Using uninitialized memory 'Pixel'.

Change 3101292 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'BulkDataPointer'.

Change 3101299 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'UnrealMaterial'.

Change 3101300 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'AssetObject'.

Change 3101304 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'MeshRootNode'.

Change 3101311 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Cluster'.

Change 3101323 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'StartNode'.

Change 3101329 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Object'.

Change 3101333 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ArrayRef'.

Change 3101339 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ImportData'.
	warning C6011: Dereferencing NULL pointer 'CurveToImport'.

Change 3101485 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ObjectProperty'.

Change 3101583 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'UserDefinedStruct'.

Change 3105721 on 2016/08/30 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.

Change 3105724 on 2016/08/30 by Steven.Hutton

	Change users page to more responsive paginated version.

Change 3105725 on 2016/08/30 by Steven.Hutton

	Added field for crash processor failed

Change 3105786 on 2016/08/30 by Steve.Robb

	Reintroduced missing operator<< for enum classes.

Change 3105803 on 2016/08/30 by Steve.Robb

	Removal of obsolete code and state.  PrepareCppStructOps() has several unreachable blocks, one of which sets UScriptStruct::bCppStructOpsFromBaseClass which is otherwise never true, so it can be removed too.

Change 3106251 on 2016/08/30 by Steve.Robb

	Switch static analysis node to build editor instead of just the engine.

Change 3107556 on 2016/08/31 by Steven.Hutton

	Added build version data from CRP to DB as part of add crash #rb none

Change 3107557 on 2016/08/31 by Steven.Hutton

	Passed build version data to CRW through crash description #rb none

Change 3107634 on 2016/08/31 by Graeme.Thornton

	Only accept "log=<filename>" and "abslog=<filename>" command line values if the filename has a "log" or "txt" extension

	#jira UE-20147

Change 3107797 on 2016/08/31 by Steve.Robb

	Fix for UHT debugging manifest, after paths changed in CL# 3088416.

Change 3107964 on 2016/08/31 by Steve.Robb

	TCString::Strfind renamed to TCString::Strifind, as it is case-insensitive.
	New case-sensitive TCString::Strfind added, based on GitHub PR #2453.

Change 3108023 on 2016/08/31 by Steve.Robb

	Removal of test code which no longer compiles now that we emit errors on skipped preprocessor blocks.

Change 3108160 on 2016/08/31 by Steven.Hutton

	Update to add new filter to website front page #rb none

Change 3109556 on 2016/09/01 by Steven.Hutton

	Fixing compile warning #rb none

Change 3110001 on 2016/09/01 by Steve.Robb

	PR #2468: Fix for UnrealHeaderTool TArray<TScriptInterface<>> UFUNCTION parameters (Contributed by UnrealEverything)

Change 3111835 on 2016/09/02 by Steve.Robb

	Enforce uint8 on UENUM() enum classes.

	#jira UE-35224

Change 3111867 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 3111880 on 2016/09/02 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'Views':  the writable size is 'ShaderBindings.ResourceViews.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11ShaderResourceView> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written.
	warning C6386: Buffer overrun while writing to 'ConstantBuffers':  the writable size is 'ShaderBindings.ConstantBuffers.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11Buffer> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written.

Change 3111886 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6386: Buffer overrun while writing to 'DistortionMeshIndices':  the writable size is 'NumIndices*2' bytes, but '4' bytes might be written.

Change 3112025 on 2016/09/02 by Steve.Robb

	Static analysis fix:

	warning C6011: Dereferencing NULL pointer 'pInputProcessParameters'.
	warning C6011: Dereferencing NULL pointer 'pOutputProcessParameters'.

Change 3112051 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Command'.

Change 3112066 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurNetDriver'.

Change 3112093 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'byteArray'.

Change 3112110 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'PersistentParty'.

Change 3112123 on 2016/09/02 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'CurDriver'.
	warning C6011: Dereferencing NULL pointer 'CurNetDriver'.
	warning C6011: Dereferencing NULL pointer 'CurWorld'.

Change 3112157 on 2016/09/02 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'UnitTest'.

Change 3112283 on 2016/09/02 by Steve.Robb

	Static analysis fixes:

	warning C6244: Local declaration of 'None' hides previous declaration at line '173' of 'netcodeunittest.h'.

Change 3113455 on 2016/09/05 by Chris.Wood

	CRP performance improvements (v1.1.25)

Change 3113468 on 2016/09/05 by Steve.Robb

	Reverting unnecessary merge in CL# 3112464.

Change 3113508 on 2016/09/05 by Steve.Robb

	Static analysis fix: warning C6031: Return value ignored: 'CoCreateGuid'.

Change 3113588 on 2016/09/05 by Steve.Robb

	Static analysis fix: warning C6244: Local declaration of 'hInstance' hides previous declaration

Change 3113863 on 2016/09/06 by Steve.Robb

	Fix for this error:

	Could not find a part of the path 'D:\Build\++UE4+Dev-Core+Compile\Sync\Engine\Plugins\2D\Paper2D\Binaries\Win64\UE4Editor.modules'.

Change 3113864 on 2016/09/06 by Steve.Robb

	Misc static analysis fixes for VS2015 Update 2.

Change 3113918 on 2016/09/06 by Ben.Marsh

	Explicitly check for version manifest existing before trying to delete it, rather than swallowing the exception.

Change 3114293 on 2016/09/06 by Steve.Robb

	Static analysis fixes for Visual Studio Update 2.

Change 3115732 on 2016/09/07 by Steve.Robb

	Static analysis fix: warning C6262: Function uses '121180' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.

Change 3115754 on 2016/09/07 by Steve.Robb

	GObjectArrayForDebugVisualizers init order fix.
	Removal of obsolete FName visualizer helper code.

Change 3115774 on 2016/09/07 by Steve.Robb

	Fix for ICE by moving static variables into their own file and removing const return types.

	#jira UE-35597

Change 3116061 on 2016/09/07 by Steve.Robb

	Redundant LOCTEXT_NAMESPACE removed - was missed in CL# 3115774.

Change 3117478 on 2016/09/08 by Steve.Robb

	Static analysis fixes in third party code, using a new macro-based system.

Change 3119152 on 2016/09/09 by Steve.Robb

	TArray::RemoveAt and RemoveAtSwap with a bool Count is now a compile error.

Change 3119200 on 2016/09/09 by Steve.Robb

	Fix for destructors not being called in TSparseArray move assignment.

Change 3119568 on 2016/09/09 by Steve.Robb

	Fix for TSparseArray visualizer.

Change 3119591 on 2016/09/09 by Steve.Robb

	New MakeShared function which allocates the object and reference controller in a single block.

Change 3120281 on 2016/09/09 by Steve.Robb

	Fix for ICE on static analysis build.

	#jira UE-35596

Change 3120786 on 2016/09/12 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SavedGame'.

Change 3120787 on 2016/09/12 by Steve.Robb

	Removal of TEnumAsByte on enum classes.

Change 3120789 on 2016/09/12 by Steve.Robb

	Static analysis fixes:

	warning C6385: Reading invalid data from 'D3D11X_CERAM_OFFSET_BY_SET_STAGE':  the readable size is '28' bytes, but '64' bytes may be read.
	warning C6101: Returning uninitialized memory '*pDescriptorDst'.  A successful path through the function does not set the named _Out_ parameter.

Change 3121234 on 2016/09/12 by Steve.Robb

	Unused ToBuildInfoString function declaration removed.

Change 3122616 on 2016/09/13 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Compiler'.

Change 3123070 on 2016/09/13 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'top' contains the same NULL value as 'edge' did.

[CL 3126145 by Robert Manuszewski in Main branch]
2016-09-15 00:21:42 -04:00
Ben Marsh
3e80336791 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3092544)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3079316 on 2016/08/05 by Ben.Marsh

	Better PCH selection in ShaderFormatOpenGL and MetalShaderFormat - make sure Core is the first included header.

Change 3080579 on 2016/08/08 by Ben.Marsh

	Slate: Move DEBUG_TAB_MANAGEMENT into SDockingTabStack.h to remove circular include dependency with DockingPrivate.h.

Change 3080587 on 2016/08/08 by Ben.Marsh

	StandaloneRenderer: Move platform includes into a separate header so we can make individual headers self-contained, without having a circular dependency on StandaloneRendererPrivate.h.

Change 3080789 on 2016/08/08 by Ben.Marsh

	Move BuildGraph tasks for chunking, posting builds, labeling builds, and merging manifests into the MCP project. While we do provide public interfaces for this functionality, we don't currently expect anyone outside Epic to be using them.

Change 3080815 on 2016/08/08 by Ben.Marsh

	BuildGraph: Add a -GenerateDocs option, which writes out an HTML file constructed from C# XML documentation containing all the task information.

Change 3081374 on 2016/08/08 by Ben.Marsh

	UBT: Invalidate the makefile if any UHT headers are deleted. Should fix issue where files are moved from one module to another, and the original module no longer contains any generated headers. Its include path needs to be removed from the compile environment.

Change 3083152 on 2016/08/09 by Ben.Marsh

	PR #2667: Add Intel C++ Compiler support to Windows build (Contributed by JeffRous)

Change 3084039 on 2016/08/10 by Ben.Marsh

	BuildGraph: Add additional markup for parameter attributes. Also improve some documation.

Change 3084240 on 2016/08/10 by Ben.Marsh

	Plugins: Allow plugins in the project folder to replace plugins in the engine folder with the same name. Prohibit multiple plugins with the same name at other times.

Change 3084337 on 2016/08/10 by Ben.Marsh

	UBT: Specify the -precompile option when generating project files for a target, so we include all valid modules for intellisense.

Change 3085594 on 2016/08/11 by Ben.Marsh

	Change modules which reference a public header for their PCH to use a private PCH instead, even if it just includes the public header for now.

Change 3085999 on 2016/08/11 by Ben.Marsh

	Add some missing #pragma once directives.

Change 3086146 on 2016/08/11 by Ben.Marsh

	Core: Move prototype and linkage specifier for ConsoleCommandLibrary_* functions into header matching cpp file.

Change 3086172 on 2016/08/11 by Ben.Marsh

	Fixup some C-style header guards to use #pragma once instead.

Change 3087289 on 2016/08/12 by Ben.Marsh

	Split out UPackage and UMetaData into their own headers (they're already implemented in separate CPP files)

Change 3087310 on 2016/08/12 by Ben.Marsh

	Move method stubs for FNullSlateSoundDevice into a CPP file, since they're exported from the SlateCore module.

Change 3087341 on 2016/08/12 by Ben.Marsh

	UdpMessaging: Move PCH before #if PLATFORM_DESKTOP; it will only be defined if the definition is included.

Change 3087457 on 2016/08/12 by Ben.Marsh

	Core: Reorganize the FTransform and FMatrix headers: Transform.h now includes TransformNonVectorized.h or TransformVectorized.h as appropriate, and UnrealMatrix.h is now Matrix.inl (and included from Matrix.h).

Change 3088407 on 2016/08/13 by Ben.Marsh

	Replace use of Windows SIZE_T define with the regular C++ size_t.

Change 3088416 on 2016/08/13 by Ben.Marsh

	Include a header from all .generated.cpp files (GeneratedCppIncludes.h) which includes all the basic types required to compile them, rather than assuming that the module PCH will include everything.

	Also include the real declarations of noexport classes in Object.h (now renamed to NoExportTypes.h for clarity) when the CPP macro is defined, so the .generated.deps.h file will automatically have the correct definitions for them at compile time rather than relying on them being in the private PCH.

	Finally, rename UObject.h to Object.h for consistency with the naming convention for all other UObject classes. UObject.h still exists for now, but outputs a deprecated message if included.

Change 3088544 on 2016/08/14 by Ben.Marsh

	Core: Move the definition of the TEXT() macro into Platform.h, to avoid having to include OS headers to get it.

Change 3088552 on 2016/08/14 by Ben.Marsh

	Fix compile errors for some modules that don't already include CoreUObject.h.

Change 3088925 on 2016/08/15 by Ben.Marsh

	Remove circular include dependencies from VulkanRHI.

Change 3088926 on 2016/08/15 by Ben.Marsh

	Remove duplicate definition for WITH_FIXED_AREA_ENTERING_COST from EngineDefines.h - always uses the definition from DetourNavMeshQuery.h instead.

Change 3088930 on 2016/08/15 by Ben.Marsh

	Remove circular include dependency from PhysX.

Change 3088935 on 2016/08/15 by Ben.Marsh

	OnlineSubsystemUtils: Move CPP files out of public header directory.

Change 3088965 on 2016/08/15 by Ben.Marsh

	Add private PCH to Landscape, MoviePlayer, TaskGraph, XAudio2 and RealtimeProfiler modules.

Change 3088966 on 2016/08/15 by Ben.Marsh

	Engine: Move CPP files out of public header directories.

Change 3089520 on 2016/08/15 by Ben.Marsh

	BuildGraph: Change documentation command to output markdown.

Change 3090299 on 2016/08/16 by Ben.Marsh

	D3D12RHI: Move around some implementations to fix circular header dependencies which are masked by delayed template instantiation.

Change 3090303 on 2016/08/16 by Ben.Marsh

	Engine: Add a template specialization for TPointerIsConvertibleFromTo<AActor, const volatile UObject> to fix dependency on complete AActor definition for static assert in TWeakPointer<AActor>, which only appears if including Level.h without Actor.h. Delayed template instantiation usually masks this issue.

Change 3091861 on 2016/08/17 by Ben.Marsh

	Remove circular header dependencies, and fix ambiguous include paths in OSVR.

Change 3092068 on 2016/08/17 by Ben.Marsh

	Moving VulkanDynamicRHI into its own header.

Change 3093133 on 2016/08/18 by Ben.Marsh

	EC: Include additional context lines for Clang errors.

Change 3093147 on 2016/08/18 by Ben.Marsh

	UBT: Add an error message when attempting to do a single-file compile with the wrong target selected.

Change 3093228 on 2016/08/18 by Ben.Marsh

	Remove redundant setting for remote server name from XML config, and set it to a valid machine in the engine config.

[CL 3093264 by Ben Marsh in Main branch]
2016-08-18 10:28:43 -04:00
Mike Beach
5f72049a23 Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3080732)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3058607 on 2016/07/20 by Mike.Beach

	Preventing a uneeded FStructOnScope allocation from happening - was causing issues with the memstomp allocator (internally, FStructOnScope was allocating mem of zero size and then asserting on the returned pointer).

Change 3059586 on 2016/07/21 by Maciej.Mroz

	Added comments

Change 3061614 on 2016/07/22 by Ben.Cosh

	Fix for a bug in the blueprint profiler tunnel mapping code that caused asserts when internal pure tunnel pins were linked to each other as pass thru.
	#Jira UE-33654 - Editor crash on compilation when feeding impure data to macros implemented via blueprint while profiling is enabled
	#Jira UE-33138 - BP Profiler: crash when trying to set child actor in profiler
	#Proj BlueprintProfiler

Change 3061686 on 2016/07/22 by Mike.Beach

	Keeping cyclically dependent Blueprints from infinitely trying to recompile each other, when both have an unrelated error that will not be resolved by compiling the other.

Change 3061760 on 2016/07/22 by Ben.Cosh

	Minor refactor of the delegate event code in the profiler to fix some stubborn issues.
	#Jira UE-33466 - Key events still have problems with recording event stats correctly
	#Proj BlueprintProfiler, Kismet

Change 3061819 on 2016/07/22 by Maciej.Mroz

	#jira UE-26676 Blueprint native events give error when output ref params aren't in a specific order

	Force a overriden function to have the same parameter's order as the original one.

Change 3061854 on 2016/07/22 by Bob.Tellez

	Duplicate CL#3058653 //Fortnite/Main

	#UE4 Now actually removing deprecated pins from non-blueprint graphs. Also MarkPendingKill now happens in UEdGraphNode's BeginDestroy instead of its destructor to ensure supporting code can safely access references to other UObjects.

Change 3062634 on 2016/07/23 by Mike.Beach

	Accounting for EditablePinBase nodes whose UserDefinedPins have the wrong direction assigned to them (we now validate the direction, and expect it to reflect the EdGraphPin's). We already had made this fixup in CustomEvent nodes, but others (like collapsed tunnels, and math expression nodes) needed the fixup as well.

Change 3062926 on 2016/07/25 by Ben.Cosh

	Added functionality to the blueprint compiler to detect local event function calls and handle them better in profiling conditions.
	#Jira UE-32869 - Nodes called after a custom event call do not record stats in the profiler
	#Proj CoreUObject, BlueprintProfiler, UnrealEd, KismetCompiler, BlueprintGraph

	- Added script emitted inline event start/stop calls for inline events so we can pull out and process these events discretely
	- Looked into adding something similar for all events but couldn't find a good place to put it/get it operational so it caught more standard events.

Change 3063406 on 2016/07/25 by Ben.Cosh

	Modifying the execution graph selection highlight coloring.
	#Jira none
	#Proj EditorStyle

Change 3063505 on 2016/07/25 by Ben.Cosh

	The blueprint profiler tunnel mapping was missing a call seek past reroute nodes
	#Jira UE-33670 - Reroute nodes used in 'for' loops break profiler communication
	#Proj BlueprintProfiler

Change 3063508 on 2016/07/25 by Ben.Cosh

	Fixed a minor bug in the stat creation code that reported tunnel pure timings twice.
	#Jira UE-33707 - BP Profiler - Pure nodes internal to macro reported twice in tree view
	#Proj Kismet

Change 3063511 on 2016/07/25 by Ben.Cosh

	Fix for a bug introduced that caused pie instances to mapped twice in the blueprint profiler.
	#Jira UE-33697 - BP Profiler: Extra instance showing up in the tree view
	#Proj BlueprintProfiler

Change 3063627 on 2016/07/25 by Maciej.Mroz

	#jira UE-33027 Crash when implementing interface to child blueprint and then implementing it with parent blueprint

	Removed premature validation.

Change 3064349 on 2016/07/26 by Maciej.Mroz

	#jira UE-32942 BP Nativization: Reduce the size of executable files

	Enabled and fixed local variables on event graph. Local variable can be only created as return value (so we're sure it doesn't require any resistency between calls.)
	It reduces size of executable file (2MB in Orion.exe dev config).
	It reduces number of member variables in nativized class (local varaibles in functions are not uproperties, so the number of generated of objects decreases).

Change 3064788 on 2016/07/26 by Ryan.Rauschkolb

	Fixed Splitting a Rotation input struct pin results in any previously entered values shifting to a different axis
	#UE-31931

Change 3064828 on 2016/07/26 by Ryan.Rauschkolb

	Removed flag to disable Single Layout Blueprint Editor (no longer experimental feature)
	#jira UE-32038

Change 3064966 on 2016/07/26 by Ryan.Rauschkolb

	Fixed Comment bubbles don't handle widget visibility correctly
	#UE-21278

Change 3068095 on 2016/07/28 by Maciej.Mroz

	#jira UE-32942 BP Nativization: Reduce the size of executable files

	Private and protected properties have PrivatePropertyOffset (PPO) function in .generated.h. This function allows the nativized code to access the property without using UProperty.
	-It reduces the size of executable file (added by nativized plugin) about 10%. The OrionGame.exe (development config) is 6MB smaller.
	-It reduces the number of FindField function calls and stativ variables in the nativized code.

	List of inaccessible properties (that cannot be accessed using PPO) is logged while cooking (with nativization enabled).

Change 3068122 on 2016/07/28 by Maciej.Mroz

	#jira UE-32942 BP Nativization: Reduce the size of executable files

	Hardcoded asset paths are split, so string literals can be better reused.
	Added UDynamicClass::FindStructPropertyChecked. It replaces FindFieldChecked<UStructProperty>, without inlining, and implicit FName constructor.

	It reduced the size of OrionGame.exe 1MB.

Change 3068159 on 2016/07/28 by Maciej.Mroz

	#jira UE-32806 GitHub 2569 : Exposed GetComponentByClass to blueprint
	#2569: Exposed GetComponentByClass to blueprint (Contributed by Koderz)

Change 3069715 on 2016/07/29 by Maciej.Mroz

	#jira UE-33460 [CrashReport] UE4Editor_CoreUObject!UObjectPropertyBase::ParseObjectPropertyValue() [propertybaseobject.cpp:237]

	UObjectPropertyBase::ParseObjectPropertyValue won;t crash when property is invalid.
	Property validation in UserDefinedStruct. THe struct is not recompiled on load, so it must be validated after serialization.

Change 3070569 on 2016/07/29 by Bob.Tellez

	Duplicating CL#3070518 from //Fortnite/Main

	#UE4 Deprecated pin removal logic is now exclusively in UEdGraphNode::PostLoad. DeprecatedPinWatches fixup is now done in K2Node::PostLoad.

Change 3071292 on 2016/07/30 by Mike.Beach

	Preventing the Blueprint reinstancer's Function/PropertyMap from being GC'd during compile. This was causing issues where new functions/properties were being allocated in the same pointer location, and UpdateBytecodeReferences() was replacing those references as well (specifically in unrelated class's Children->Next chain, linking in functions/properties that did not belong to that class). This was causing a multitude of problems (mainly bad property offset read/writes and endless field iterator loops).

	#jira UE-29631

Change 3072078 on 2016/08/01 by Maciej.Mroz

	#jira UE-33423, UE-33860

	Removed too strint ensures.
	Fixed FGraphObjectTextFactory - After Custom Event nodes are pased, Skel Class is recompiled, because other pasted nodes may require its signature.

Change 3072166 on 2016/08/01 by Dan.Oconnor

	PR #2589: fix EaseIn / EaseOut descriptions (Contributed by dsine-de)

	#jira UE-32997

Change 3072614 on 2016/08/01 by Mike.Beach

	Fixing an issue where hot-reloading a Blueprint parent class was not reinstancing skeleton CDOs. This caused problems later where the skel class layout didn't reflect the CDO object.

	#jira UE-29613
	#codreview Maciej.Mroz, Phillip.Kavan

Change 3073939 on 2016/08/02 by Dan.Oconnor

	Final fix for function graphs that cannot be deleted (bAllowDeletion erroneously set to false). Issue only manifests with assets created before 4.11, as the original bug was fixed in 2842578
	#jira UE-19062

Change 3075793 on 2016/08/03 by Maciej.Mroz

	#jira UE-30473 Moving child component in child blueprint forces parent to become dirty

	Don't make parent BP package dirty, when a component in child BP was modified.

Change 3076990 on 2016/08/04 by Ben.Cosh

	This fixes issues with mapping tunnel boundary pure nodes and addresses some asserts recently introduced.
	#Jira UE-33691 - Assert when compiling Blueprint with profiler instrumentation
	#Jira UE-33138 - BP Profiler: crash when trying to set child actor in profiler
	#Jira UE-33654 - Editor crash on compilation when feeding impure data to macros implemented via blueprint while profiling is enabled
	#Proj Kismet, BlueprintProfiler, BlueprintGraph

	- Fixed inline event detection ( it was causing function stats to fail, happened across it )
	- Updated pure node lookup to use the entry pin, this was required because pure nodes span function contexts and lookup is a problem in nested tunnels.
	- Updated tunnel pure node code, added a stubbed pure chain early on external pure links add this and it maps at an appropriate time.
	- Changed the way nested tunnels are mapped, now only top level tunnels are gathered mapping the blueprint and these map nested tunnels and register them.
	- Updated pure node stat refreshes and heat level updates ( this was causing a bunch of extra cost with my changes )
	- Fixed an issue with script perf data that caused nan's with no samples.
	- Updated pure node playback to cache pure nodes and avoid a second involved lookup when applying timings.
	- Renamed FScriptExecutionPureNode to FScriptExecutionPureChainNode to better reflect it's updated role.
	- Added extra editor stat collection for checking the cost breakdown of the profiler ( hottest path and heat level calcs now have discreet timings )

Change 3079235 on 2016/08/05 by Phillip.Kavan

	Fix for a bug in pi to pure node lookup functionality that caused pure nodes to be mapped more than once.
	#Jira UE-34254 - Crash compiling blueprint with instrumentation - !ScriptExecNode.IsValid()
	#Proj BlueprintProfiler, Kismet

	- Fixed the code to focus observed pins
	- Fixed event pin mapping code that was failing when linked directly to a tunnel node.

	Note: Submitting on behalf of BenC (per MikeB).

Change 3080417 on 2016/08/08 by Ben.Cosh

	This fixes the way execution path stats are calculated.
	#Jira UE-34150 - Exec pin containers in the profiler are accumulating time incorrectly.
	#Proj Kismet

Change 3080484 on 2016/08/08 by Maciej.Mroz

	#jira UE-28625 Direction of GetOverlapInfos parameter doesn't match

Change 3080571 on 2016/08/08 by Ben.Cosh

	This addresses some flaws in the fix submitted in CL 3080417 that were discovered after submission.
	#Jira UE-34150 - Exec pin containers in the profiler are accumulating time incorrectly.
	#Proj Kismet

[CL 3080751 by Mike Beach in Main branch]
2016-08-08 11:42:16 -04:00
Ben Marsh
28be3c41b4 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3075869)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3059740 on 2016/07/21 by Ben.Marsh

	Format license violations on separate lines rather than as a single multi-line string, so they can be parsed out correctly by the EC log parser.

Change 3063115 on 2016/07/25 by Ben.Marsh

	Add missing projects to Mono AutomationTool solution.

Change 3067125 on 2016/07/27 by Ben.Marsh

	Clean up and document the engine versioning system.

	* Version.h has a summary of all the different versioning concepts in UE4, as well as an explanation of what all the macros do.
	* VersionLocked.h has been removed. ENGINE_NET_VERSION and ENGINE_REPLAY_VERSION can be overriden directly in Version.h if necessary.
	* Added explicit macros for ENGINE_CURRENT_CL_VERSION And ENGINE_COMPATIBLE_CL_VERSION. The MODULE_API_VERSION macro is now defined to be the same as ENGINE_COMPATIBLE_CL_VERSION.
	* Build/Build.version now includes the compatible CL version, so it can be determined without having to parse header files inside MacToolChain.cs.
	* UpdateLocalVersion UAT command now exposes a -CompatibleCL=... argument to update ENGINE_COMPATIBLE_CL_VERSION and the CompatibleChange property in Build.version.
	* SetVersion BuildGraph task now has a CompatibleChange="" attribute to update ENGINE_COMPATIBLE_CL_VERSION and the CompatibleChange property in Build.version.
	* VersionFileUpdater now makes an effort to parse tokens matching the macros it's going to overwrite, rather than requiring exact matches in whitespace in Version.h.
	* Running UpdateLocalVersion now syncs files to revision 0 before writing if P4 is enabled, similarly to UGS, or fails if they are not writable.

Change 3067242 on 2016/07/27 by Ben.Marsh

	Fix UGS showing a build failure/warning dialog immediately if you submit while the build is yellow/red. Now ignores builds before your last submitted CL.

Change 3068116 on 2016/07/28 by Ben.Marsh

	Add a small Windows utility to terminate all running processes under a given root directory, and run it before and after every sync. Mean to fix instances where zombie editor processes do not terminate correctly and cause subsequent syncs to fail.

Change 3068246 on 2016/07/28 by Ben.Marsh

	UGS: Improvements to 'Clean Workspace' dialog - empty folders are now set to be deleted by default, and added a context menu to select all/none/empty/default for a subtree, as well as to open Windows explorer at that location.

Change 3068573 on 2016/07/28 by Ben.Marsh

	Attempt to fix AppDomain unload errors; suspect caused by delay to terminate child processes when managed exception is thrown on child threads. Now waits for the currently running threads to finish executing before quitting.

Change 3068575 on 2016/07/28 by Ben.Marsh

	Respect the -noxge command-line argument when compiling UHT.

Change 3068665 on 2016/07/28 by Ben.Marsh

	Delete any DLLs in output folders which share names with build products. The Windows loader reads DLLs from the first location it finds a file with a matching name, so we need to ensure that it doesn't load stale DLLs when output directories are changed (moving a module into a plugin, for example).

Change 3073316 on 2016/08/02 by Ben.Marsh

	CoreUObject: Replace header guards with #pragma once directives.

Change 3073325 on 2016/08/02 by Ben.Marsh

	CoreUObject: Manually untangle a few circular includes around ObjectBase.h and Class.h to allow making them into IWYU-style headers.

Change 3074391 on 2016/08/02 by Ben.Marsh

	GitHub #2646: Always allow programs to build as part of non-game solution configurations.

Change 3075123 on 2016/08/03 by Richard.Fawcett

	Ensure that zip files created outside of Ionic Zip can be unzipped with CommandUtils.UnzipFiles

	Zip files created with 7-zip, WinRAR, and Windows Explorer all contain entities for directories, not just the files in them.  Code in CommandUtils.UnzipFiles made the assumption that all entities in the zip file were files, and an exception was being thrown on encountering a directory.

Change 3075848 on 2016/08/03 by Ben.Marsh

	UBT: Fix a few cases where it's possible to construct a non-canonical DirectoryReference - root directories on Windows must always have a terminating slash, but any other directories must note. DirectoryInfo and Path.GetFullPath() do not enforce this requirement.

Change 3075850 on 2016/08/03 by Ben.Marsh

	UBT: Fix UHT failures when running with -nopch.

Change 3077058 by Ben.Marsh

	UHT: Remove the auto-generated ObjectBase.h include from generated header files. Was originally added to allow doxygen to parse headers more easily, but was switched to parsing the file only as part of parent files instead.

[CL 3077308 by Ben Marsh in Main branch]
2016-08-04 10:41:07 -04:00
Robert Manuszewski
af30c884a5 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3049602)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2946506 on 2016/04/18 by Steven.Hutton

	Update to Crash Reporter buggs table to add new search fields and inclusion of packages needed for e-mail reports.

Change 3017807 on 2016/06/17 by Chris.Wood

	Improved Crash Report Process folder delete code as it could sometimes fail.
	[UE-30349] - Crash Report Process is leaving crashes in the landing zone that build up and block the queue

	Also added logging to Slack when stop request received instead of just when stop is complete.

Change 3019367 on 2016/06/20 by Chris.Wood

	Improve Crash Report Process logging to track bad reads from S3.
	Also, better logging when CleanReport fails to delete folders.

Change 3019376 on 2016/06/20 by Steve.Robb

	Clarification of assert message and comments which talk about 'null' TFunctions.
	Tidy-up of dead code.

Change 3019409 on 2016/06/20 by Steve.Robb

	New Find and FindByPredicate algorithms for finding stuff in arbitrary containers.

Change 3022658 on 2016/06/22 by Chris.Wood

	Discarding duplicated crash reports earlier in read from Data Router process to avoid clashes in the landing zone (CRP v1.1.11)
	[UE-30349] - Crash Report Process is leaving crashes in the landing zone that build up and block the queue

	Also improved logging to Slack with better layout, fixed event ordering and counting duplicates.

Change 3022840 on 2016/06/22 by Steve.Robb

	Skipped UHT attributes removed.

Change 3022907 on 2016/06/22 by Robert.Manuszewski

	Fixing crash when adding a new C++ class to project

	#jira UE-32333

Change 3023169 on 2016/06/22 by Steve.Robb

	Checks for UTHINGs in skipped preprocessor blocks.
	Fixes for skipped UTHINGs and some other parsing accidents.

	#jira UE-31627

Change 3023239 on 2016/06/22 by Steve.Robb

	Fix for JSON date parsing reported here: https://udn.unrealengine.com/questions/299342/fdatetime-json-serialization-bug.html

Change 3026812 on 2016/06/24 by Mieszko.Zielinski

	Marked FEnvQueryInstance::AddItemData UEnvQueryItemType_Point specialization as AIMODULE_API #UE4

Change 3028235 on 2016/06/27 by Robert.Manuszewski

	PR #2535: BUGFIX: FPS pop-up updates when loading new stat file (Contributed by projectgheist)

Change 3028282 on 2016/06/27 by Steve.Robb

	Fix for missing UFUNCTION check in skipped preprocessor blocks.

	#jira UE-31627

Change 3028284 on 2016/06/27 by Steve.Robb

	Debuggability improvements and coding standards changes.

Change 3028343 on 2016/06/27 by Steve.Robb

	Fix for UHT error in WEX.

	#jira UE-32464

Change 3028393 on 2016/06/27 by Steve.Robb

	Fix for hot reload of enums finding the old enum.
	Fix to stop SPropertyEditorNumeric caching the enum flags.

	#jira UE-31658

Change 3030362 on 2016/06/28 by Robert.Manuszewski

	Fixing hang when cooking.

Change 3030462 on 2016/06/28 by Steve.Robb

	Assert added to PackageTools::GetFilteredPackageList() to help with catching a bug reported in the wild.

	#jira UE-32001

Change 3034341 on 2016/06/30 by Robert.Manuszewski

	Modified crash handling code (on Windows) to handle two threads crashing at the same time properly.  Previously the second crash would force the process to exit before generating the crash report.

	Added 'debug twothreadsgpf' command to test the functionality.

Change 3034342 on 2016/06/30 by John.Mahoney

	Fix for crash when loading an empty cached asset registry.

	#jira UE-32232

Change 3035599 on 2016/07/01 by Chris.Wood

	Added support for CrashType string to Crash Report Process. CRP v1.1.12
	[UE-30592] - Crash Reporter should determine crash type on client and pass string to server

	Also fixes problem with reports falling back on the legacy WER metadata when a crash context exists. They now only read the error message from metadata if available and keep crash context data when possible.

	Added in missing crash context parameters that have been added to clients but not known by the server.

Change 3035787 on 2016/07/01 by John.Mahoney

	Fix for crash when DuplicateRedirects does not contain the DependentObject when saving dependencies. It will still fall through to the assertion below, but it will now fail with a useful error message instead of a generic 'Pair != nullptr' from Map.h.

	#jira UE-30189

Change 3036933 on 2016/07/04 by Steve.Robb

	Proper forwarding constructor for FAsyncTask.

Change 3036938 on 2016/07/04 by Steve.Robb

	Fix for CDO hot reload corrupting memory when replacing references inside structs.

	#jira UE-29335

Change 3036960 on 2016/07/04 by Steve.Robb

	Fix for FAnsiAllocator::ResizeAllocation when resizing to zero.

Change 3037423 on 2016/07/05 by Steve.Robb

	FModuleManager::UnloadOrAbandonModuleWithCallback split into two instead of switching behavior with a bool.

Change 3037464 on 2016/07/05 by Steve.Robb

	HotReload.cpp cleanup:

	Deep nesting flattened.
	Linear array searches replaced with maps.
	FHotReloadModule::GetGameModules made into a non-member function and split into two.
	Comment and coding standard fixes.

Change 3037741 on 2016/07/05 by John.Mahoney

	Fix for COTF not checking the correct timestamps on startup.

	#jira UE-31023

Change 3037846 on 2016/07/05 by Steve.Robb

	Fix for compile button disappearing on a bad compile.

	#jira UE-31575

Change 3037994 on 2016/07/05 by Steve.Robb

	Static analysis fixes:

	warning C6308: 'realloc' might return null pointer: assigning null pointer to 'Data', which is passed as an argument to 'realloc', will cause the original memory block to be leaked.

Change 3039186 on 2016/07/06 by Robert.Manuszewski

	Enabling crash callstack logging by default.

Change 3039220 on 2016/07/06 by Steve.Robb

	Static analysis fixes:

	warning C28159: Consider using 'InitiateSystemShutdownEx' instead of 'ExitWindowsEx'. Reason: Legacy API. Rearchitect to avoid Reboot
	warning C6001: Using uninitialized memory 'UserNameLength'
	warning C6001: Using uninitialized memory 'DomainNameLength'

Change 3039230 on 2016/07/06 by Steve.Robb

	Fix for VC internal compiler errors.

Change 3039237 on 2016/07/06 by Steve.Robb

	Static analysis fix: warning C6385: Reading invalid data from 'Path':  the readable size is '400' bytes, but 'PathCurrentDepth' bytes may be read.

Change 3039287 on 2016/07/06 by Steve.Robb

	Static analysis fixes:

	warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts
	warning C6101: Returning uninitialized memory '*lpdwExitCode'.  A successful path through the function does not set the named _Out_ parameter.
	warning C6387: '_Param_(1)' could be '0':  this does not adhere to the specification for the function 'IMoniker::BindToStorage'.
	warning C6387: '_Param_(1)' could be '0':  this does not adhere to the specification for the function 'IMoniker::BindToObject'.
	warning C6031: Return value ignored: 'CoCreateInstance'.

Change 3039359 on 2016/07/06 by Graeme.Thornton

	Compile error fix for FAsyncTask, courtesy of SteveR

Change 3039534 on 2016/07/06 by Steve.Robb

	Static analysis fix: warning C6319: Use of the comma-operator in a tested expression causes the left argument to be ignored when it has no side-effects.

Change 3039545 on 2016/07/06 by Steve.Robb

	Static analysis fix: warning C6297: Arithmetic overflow:  32-bit value is shifted, then cast to 64-bit value.  Results might not be an expected value.

Change 3039578 on 2016/07/06 by Steve.Robb

	Static analysis fix: warning C6263: Using _alloca in a loop:  this can quickly overflow stack.

Change 3039623 on 2016/07/06 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'
	warning C6308:'realloc' might return null pointer: assigning null pointer to 'X', which is passed as an argument to 'realloc', will cause the original memory block to be leaked.
	warning C6385: Reading invalid data from 'X':  the readable size is 'Y' bytes, but 'Z' bytes may be read.
	warning C6386: Buffer overrun while writing to 'X':  the writable size is 'Y' bytes, but 'Z' bytes might be written.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 3039630 on 2016/07/06 by John.Mahoney

	Fix for crash when spawning an actor using a template object that has instance components. UActorComponent::PostInitProperties was adding itself to the owner's InstanceComponents array, resulting in a realloc of that array and invalidating the reference that the owner's ObjectInitializer was trying to replace while instantiating that property. The new instance component will be added to the array as part of the owner's initialization anyway, so it is not necessary to do it here.

	#jira UE-29123

Change 3039664 on 2016/07/06 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'NewKeys':  the writable size is 'NewIndexSize*4' bytes, but '8' bytes might be written.
	warning C6386: Buffer overrun while writing to 'NewHeapIndexes':  the writable size is 'NewIndexSize*4' bytes, but '8' bytes might be written.

Change 3039673 on 2016/07/06 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'v'.

Change 3039690 on 2016/07/06 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C6246: Local declaration of 'X' hides declaration of the same name in outer scope.
	warning C6262: Function uses '121180' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.
	warning C6263: Using _alloca in a loop:  this can quickly overflow stack.

Change 3040868 on 2016/07/07 by Graeme.Thornton

	Config based class stripping for server builds

Change 3040872 on 2016/07/07 by Graeme.Thornton

	Remove "return false" NeedsLoadForServer functions from engine code

Change 3040997 on 2016/07/07 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Landscape'.
	warning C6011: Dereferencing NULL pointer 'rhs.Allocation.LayerInfo'.
	warning C6011: Dereferencing NULL pointer 'lhs.Allocation.LayerInfo'.

Change 3041004 on 2016/07/07 by Steve.Robb

	Static analysis fix: warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent.

Change 3041014 on 2016/07/07 by Steve.Robb

	Static analysis fix: warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 3041111 on 2016/07/07 by Steve.Robb

	Removal of an obsolete error message about INI file case sensitivity.

Change 3041150 on 2016/07/07 by Steve.Robb

	Static analysis fix: warning C6289: Incorrect operator:  mutual exclusion over || is always a non-zero constant.  Did you intend to use && instead?

Change 3041274 on 2016/07/07 by Steve.Robb

	Static analysis fixes: warning C6001: Using uninitialized memory 'X'.

Change 3041294 on 2016/07/07 by Chris.Wood

	Fixed protocol buffer and decompression errors in Crash Report Process (v.1.1.14)
	[UE-32151] - High number of crashes read from S3 by Crash Report Process are failing to unpack

	Size of buffer received from S3 is incorrect for some records. Fixed read problems by using size header value instead of stream length.

	Increased buffer size for decompression as this was sometimes too small.

	Modified S3 reading code to look for multiple records in each downloaded file.

Change 3041472 on 2016/07/07 by Steve.Robb

	Static analysis fixes:

	warning C6294: Ill-defined for-loop:  initial condition does not satisfy test.  Loop body not executed.
	warning C6201: Index '1' is out of valid index range '0' to '0' for possibly stack allocated buffer 'NewHistory.Nodes'.

Change 3043074 on 2016/07/08 by John.Mahoney

	Fix for COTF incorrectly reconstructing the original asset path based on the sandbox path when the game name differs from the game folder name.
	Fix for COTF GetFiles not handling absolute GameDir paths properly.

	#jira UE-31023

Change 3044461 on 2016/07/11 by Steve.Robb

	Static analysis fix: warning C6386: Buffer overrun while writing to 'Attributes':  the writable size is '16384' bytes, but '-8' bytes might be written.

Change 3044470 on 2016/07/11 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Node.Sequence'.

Change 3044476 on 2016/07/11 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'.

Change 3044551 on 2016/07/11 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'KeyAreaNode' did.

Change 3044664 on 2016/07/11 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ToLandscape->SplineComponent'.
	warning C28182: Dereferencing NULL pointer. 'SplinesComponent' contains the same NULL value as 'Landscape->SplineComponent' did.
	warning C6011: Dereferencing NULL pointer 'Landscape->SplineComponent'.
	warning C6385: Reading invalid data from 'out':  the readable size is 'sizeof(kiss_fft_cpx)*Dims[0]*Dims[1]' bytes, but '16' bytes may be read.

Change 3044716 on 2016/07/11 by Steve.Robb

	Static analysis fix: warning C6385: Reading invalid data from 'this->ScreenSize':  the readable size is '32' bytes, but '-4' bytes may be read.

Change 3044717 on 2016/07/11 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Window' contains the same NULL value as 'ElementType * Window=AllWindows.FindByPredicate((*FStaticMeshEditorTest::RunTest::<lambda_46fd0093f3912289e870263afe1fcb2e>(ExpectedTitle)))' did.

	This appears to be a false positive.

Change 3044787 on 2016/07/11 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'FbxObject'.
	warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'RigidMeshNode' did.
	warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'Result' did.

Change 3045933 on 2016/07/12 by Steve.Robb

	Overloading support for TSharedPtr, TSharedRef and TWeakPtr.

Change 3045960 on 2016/07/12 by Robert.Manuszewski

	Fixing a crash in Portal (and any other program that uses UObjects and GCs, with the exception of UHT) caused by classes not having their token stream assembled.

Change 3045963 on 2016/07/12 by Steve.Robb

	PLATFORM_COMPILER_HAS_EXPLICIT_OPERATORS, FORCEINLINE_EXPLICIT_OPERATOR_BOOL and SAFE_BOOL_OPERATORS macros removed.
	THasOperatorEquals and THasOperatorNotEquals traits moved to their own header.

Change 3045967 on 2016/07/12 by Steve.Robb

	Initializer list support for TArray and TSet.

Change 3045968 on 2016/07/12 by Robert.Manuszewski

	Fixing an ensure after typing 'stat dumphitches' in console.

Change 3045992 on 2016/07/12 by Robert.Manuszewski

	Making sure CoreUObject headers are included for programs that don't include the engine (fixing MinidumpDiagnostics CIS failure)

Change 3047870 on 2016/07/13 by Steven.Hutton

	Updated CRW to entity framework with repository models. #rb none

Change 3047871 on 2016/07/13 by Steven.Hutton

	Add repository models #rb none

Change 3049468 on 2016/07/14 by Steven.Hutton

	Fix broken project files. #rb none

#lockdown Nick.Penwarden

[CL 3050320 by Robert Manuszewski in Main branch]
2016-07-14 14:54:00 -04:00
Mike Beach
24ef33a9fa Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2927746 on 2016/03/30 by Michael.Schoell

	Local variables in function graphs will now store a hard reference to their UObject value.

	Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.

	#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native

Change 2927751 on 2016/03/30 by Michael.Schoell

	Back out changelist 2927746

Change 2986483 on 2016/05/23 by Maciej.Mroz

	#jira UE-30976 Editable enum values set on an instance are lost during nativization

	Added overriden names of Enum keys.

Change 2986712 on 2016/05/23 by Phillip.Kavan

	[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.

	change summary:
	- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.

Change 2987406 on 2016/05/23 by Ryan.Rauschkolb

	Fixed Functions filter in Find-In-Blueprints will show components from the SCS
	#jira UE-30140

Change 2988925 on 2016/05/24 by Ryan.Rauschkolb

	Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.

	#jira UE-20232

Change 2989001 on 2016/05/24 by Dan.Oconnor

	PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)

	#jira UE-31142

Change 2989447 on 2016/05/25 by Phillip.Kavan

	[UE-30807] Propagate edit condition property value changes to instances of template objects.

	change summary:
	- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)

Change 2989804 on 2016/05/25 by Phillip.Kavan

	[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.

	change summary:
	- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component

Change 2990234 on 2016/05/25 by Ryan.Rauschkolb

	Fixed issue where including a period ina  Blueprint function causes double-click to fail to open its graph
	#jira UE-4426

Change 2990566 on 2016/05/25 by Mike.Beach

	Better warn logging to help locate variable nodes that emit a "variable not found" message.

Change 2991083 on 2016/05/26 by Maciej.Mroz

	Blueprint nativization: converted classes have "config" specified.

Change 2991363 on 2016/05/26 by Phillip.Kavan

	[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.

	change summary:
	- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
	- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
	- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
	- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects

Change 2992990 on 2016/05/27 by Ryan.Rauschkolb

	Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
	#jira UE-21973

Change 2992995 on 2016/05/27 by Ryan.Rauschkolb

	Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
	#jira UE-30990

Change 2993449 on 2016/05/27 by Phillip.Kavan

	[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.

	change summary:
	- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.

Change 2993531 on 2016/05/27 by Mike.Beach

	PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)

Change 2993969 on 2016/05/30 by Maciej.Mroz

	UE-30729 Crash in Native Orion when selecting Sword or Tomahawk

	Clear AsyncLoading in subobjects.

Change 2993990 on 2016/05/30 by Phillip.Kavan

	[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.

	change summary:
	- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
	- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
	- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
	- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.

Change 2994591 on 2016/05/31 by Ryan.Rauschkolb

	Fixed issue where inherited Blueprint variable would not show parent's replications settings
	#jira UE-18912

Change 2994613 on 2016/05/31 by Ben.Cosh

	Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.

	#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
	#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
	#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
	#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
	#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
	#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
	#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
	#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
	#Jira UE-31377 - BP Profiler - Default tree view filtering to off
	#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
	#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"

	Notes:-
	- Sequence node inclusive time fixed
	- Trace History tidy up
	- Compile Icon and status messages for instrumentation
	- Message in the profiler tab for instrumentation
	- Profiler view tidy up and heat thresholds controls added
	- fixed the summed execution branch stats
	- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
	- added hottest path and hottest endpoint wire heatmaps
	- switched off the graph filter by default
	- added total time for the heatmaps
	- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code

Change 2995058 on 2016/05/31 by Phillip.Kavan

	[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.

	change summary:
	- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
	- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.

Change 2995218 on 2016/05/31 by Phillip.Kavan

	[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.

	change summary:
	- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.

Change 2996417 on 2016/06/01 by Phillip.Kavan

	[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.

	change summary:
	- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.

Change 2997001 on 2016/06/01 by Ryan.Rauschkolb

	Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
	#jira UE-30143

Change 2997521 on 2016/06/02 by Maciej.Mroz

	[Blueprint Nativization]
	- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
	- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.

Change 2997522 on 2016/06/02 by Maciej.Mroz

	Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)

Change 2997638 on 2016/06/02 by Maciej.Mroz

	Improvements for Blueprint Nativization:
	- Overridden names in nativized code have proper escape characters (in generated code).
	- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
	- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
	- warning C4883 is disabled  in .generated.cpp files for nativized module

Change 2997639 on 2016/06/02 by Maciej.Mroz

	Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
	#jira UE-28945 Failure packaging Nativized Ocean

Change 2997656 on 2016/06/02 by Maciej.Mroz

	Various improvements in BlueprintCompilerCppBackend:
	- Fixed interface cast
	- Fixed TSwitchValue issue (when used with literals)
	- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
	- Fixed bitfield getter code.
	- Reduce code size (less UsedAssets, less  ReferencedConvertedFields, cached UEnums)
	- operator == is generated for nativized structs
	- Fixed AssedId (AssetPtr) constructor in nativized code.
	- Fixed arrays of noexport struct
	- Fixed missing headers for native single cast delegate signature.
	- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.

Change 2997691 on 2016/06/02 by Maciej.Mroz

	operator == in FText. It is required for some functions in TArray<FText>

Change 2997793 on 2016/06/02 by Ben.Cosh

	Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
	#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
	#Proj BlueprintProfiler, Kismet

Change 2997901 on 2016/06/02 by Maciej.Mroz

	Back out changelist 2997691

Change 2998038 on 2016/06/02 by Mike.Beach

	Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)

Change 2998052 on 2016/06/02 by Ryan.Rauschkolb

	Fixed Comment bubbles not remembering changes after losing focus
	#jira UE-20012

Change 2998450 on 2016/06/02 by Phillip.Kavan

	[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.

	change summary:
	- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.

Change 2999763 on 2016/06/03 by Mike.Beach

	Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.

	#jira UE-26761

Change 2999768 on 2016/06/03 by Maciej.Mroz

	#jira UE-31592, UE-31593

	This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.

Change 2999770 on 2016/06/03 by Maciej.Mroz

	[Blueprint Nativization]
	Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.

Change 2999798 on 2016/06/03 by Mike.Beach

	Guarding against malformed Blueprints  (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.

	#jira UE-31522

Change 2999941 on 2016/06/03 by Mike.Beach

	Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).

	#jira UE-23371

Change 3001731 on 2016/06/06 by Phillip.Kavan

	[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.

	change summary:
	- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
	- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
	- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
	- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.

Change 3002075 on 2016/06/06 by Maciej.Mroz

	Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
	Literal expression can be emitted without known desitination property.

	#jira UE-28443 Set Boolean (by ref) crashes the editor on compile

Change 3002096 on 2016/06/06 by Ben.Cosh

	This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
	#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
	#Proj BlueprintProfiler

Change 3002108 on 2016/06/06 by Ben.Cosh

	Adds a new default option to average the blueprint level stats in the profiler.
	#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
	#Proj Kismet, BlueprintProfiler

	- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.

Change 3002782 on 2016/06/06 by samuel.proctor

	Test assets for Interface testing

Change 3003826 on 2016/06/07 by Ben.Cosh

	A few minor visual improvements for the blueprint profiler.
	#Proj Kismet, BlueprintProfiler, EditorStyle

	- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
	- Updated the pure node icon.

Change 3004067 on 2016/06/07 by samuel.proctor

	New test asset for blueprint interfaces

Change 3004069 on 2016/06/07 by samuel.proctor

	Updating asset for Interface testing

Change 3004275 on 2016/06/07 by Ryan.Rauschkolb

	Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
	#jira UE-23733

Change 3004329 on 2016/06/07 by Dan.Oconnor

	EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.

Change 3004418 on 2016/06/07 by Maciej.Mroz

	KismetCompilerVMBackend:  Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.

Change 3004496 on 2016/06/07 by Dan.Oconnor

	Disabling expensive pin allocation tracking

Change 3004649 on 2016/06/07 by Mike.Beach

	Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).

	#jira UE-31236

Change 3004667 on 2016/06/07 by Dan.Oconnor

	Removed my debugging logic

Change 3004848 on 2016/06/07 by Dan.Oconnor

	Fix spammy ensure

Change 3004871 on 2016/06/07 by Phillip.Kavan

	[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.

	change summary:
	- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
	- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.

Change 3005203 on 2016/06/07 by Dan.Oconnor

	Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
	#jira UE-31750

Change 3005441 on 2016/06/08 by Maciej.Mroz

	#jira UE-31625 Crash in nativized Orion

	AssembleReferenceTokenStream is called for Dynamic Classes:
	- in ConstructDynamicType() (when class is explicitly loaded)
	- in __CustomDynamicClassInitialization() (when CDO is created)

Change 3005540 on 2016/06/08 by Ben.Cosh

	This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
	#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
	#Proj BlueprintProfiler, Kismet

	- The jira was already fixed but I think this change improves the instance status clarity

Change 3006196 on 2016/06/08 by Dan.Oconnor

	Copy/paste logic for pin connections got lost in the shuffle
	#jira UE-31747

Change 3006416 on 2016/06/08 by Phillip.Kavan

	[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).

	change summary:
	- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.

Change 3006522 on 2016/06/08 by Dan.Oconnor

	Under rare circumstances a deprecated pin comes in that is outered to the transient package
	#jira UE-31779

Change 3006576 on 2016/06/08 by Dan.Oconnor

	Fix for non-editor builds
	#jira UE-31796

Change 3006610 on 2016/06/08 by Phillip.Kavan

	[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.

	change summary:
	- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.

Change 3006824 on 2016/06/08 by Dan.Oconnor

	More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
	#jira UE-31794

Change 3006828 on 2016/06/08 by Dan.Oconnor

	Fix for non-editor builds

Change 3006857 on 2016/06/08 by Dan.Oconnor

	Investigating shutdown ensure, traced back to a static UEdGraphPin

Change 3006907 on 2016/06/08 by Dan.Oconnor

	Noneditor build fix

Change 3006929 on 2016/06/08 by Dan.Oconnor

	Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779

Change 3007133 on 2016/06/09 by Ben.Cosh

	Fix for issue in the profiler asserting creating pins that don't have unique names.
	#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
	#Proj BlueprintProfiler

	- I believe this was recently introduced with the changes to UEdGraphPin's

Change 3007964 on 2016/06/09 by Dan.Oconnor

	Fix for  PinHelpers::UnresolvedPins being left with stale entries by undo/redo
	#jira UE-31829

Change 3007996 on 2016/06/09 by Ryan.Rauschkolb

	Added 'empty' keyword to Array Clear Node.
	#jira UE-12356

Change 3008007 on 2016/06/09 by Ryan.Rauschkolb

	Added 'negate' keyword to boolean NOT node
	#jira UE-12490

Change 3008011 on 2016/06/09 by Ryan.Rauschkolb

	Added Vector2D * Vector2D multiplication node
	#jira UE-31503

Change 3008014 on 2016/06/09 by Ryan.Rauschkolb

	Fixed Cannot connect Make Array node output to MakeArray input with split pins
	#jira UE-28530

Change 3008243 on 2016/06/09 by Dan.Oconnor

	Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
	#jira UE-31841

Change 3008289 on 2016/06/09 by Dan.Oconnor

	Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
	#jira UE-31794

Change 3008422 on 2016/06/09 by Dan.Oconnor

	Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
	#jira UE-31857

Change 3009164 on 2016/06/10 by Ryan.Rauschkolb

	Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
	#jira UE-21141,UE-23723

Change 3009165 on 2016/06/10 by Ryan.Rauschkolb

	Fixed Structure Default value editor collapses after undoing an alteration of a default value
	#jira UE-31741

Change 3009181 on 2016/06/10 by Ryan.Rauschkolb

	Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
	#jira UE-30014

Change 3009313 on 2016/06/10 by Mike.Beach

	Addressing issues with function return nodes in multiple ways:

	    - Preventing users from deleting return nodes for overriden/inherited functions.

	    - Also making sure that we create terminals for out params when the return node is disconnected (and pruned).

	    - Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).

	#jira UE-31418

Change 3009595 on 2016/06/10 by Dan.Oconnor

	EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
	#jira UE-31879

Change 3009774 on 2016/06/10 by Dan.Oconnor

	Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
	#jira UE-31906

Change 3009988 on 2016/06/10 by Dan.Oconnor

	Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
	#jira UE-31888

Change 3010050 on 2016/06/10 by Dan.Oconnor

	Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
	#jira UE-31892

Change 3010071 on 2016/06/10 by Dan.Oconnor

	Fix for pasting when owning node has whitespace in result of GetPathName
	#jira UE-31898
	#coderview Bob.Tellez

Change 3010244 on 2016/06/11 by Dan.Oconnor

	Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870

Change 3010630 on 2016/06/13 by Dan.Oconnor

	No longer relying on path name for pin resolution, path is unstable across graphs
	#jira UE-31870

Change 3010647 on 2016/06/13 by Dan.Oconnor

	PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)

	#jira UE-31928

Change 3011175 on 2016/06/13 by Ben.Cosh

	Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
	#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
	#Proj Kismet, BlueprintProfiler

	- Ensured that the trace paths contain the macro instance exec nodes
	- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
	- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.

Change 3011271 on 2016/06/13 by Ben.Cosh

	This adds support for inherited blueprint classes to the blueprint profiler.
	#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
	#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
	#Proj BlueprintProfiler

Change 3011556 on 2016/06/13 by Ryan.Rauschkolb

	Fixed Crash when breaking link to a split pin in MakeArray that is an array type
	#jira UE-31919

Change 3011624 on 2016/06/13 by Dan.Oconnor

	Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
	#jira UE-31955

Change 3011984 on 2016/06/13 by Dan.Oconnor

	Sanitizing parentpin's subpins when destroying a pin
	#jira UE-21392

Change 3012894 on 2016/06/14 by Phillip.Kavan

	[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.

	change summary:
	- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.

	#jira UE-30922

Change 3013037 on 2016/06/14 by Ryan.Rauschkolb

	Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
	#jira UE-31917

Change 3014846 on 2016/06/15 by Dan.Oconnor

	No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
	#jira FORT-23753

Change 3015014 on 2016/06/15 by Dan.Oconnor

	Removing poorly implement IsLetter function

Change 3015142 on 2016/06/15 by Dan.Oconnor

	More intentional about removing subpins, prevents stale iterator on split pin collapse
	#jira UE-32072

Change 3016326 on 2016/06/16 by Ryan.Rauschkolb

	Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
	#jira UE-32016

Change 3016494 on 2016/06/16 by Ryan.Rauschkolb

	Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
	#jira UE-31876

Change 3016557 on 2016/06/16 by Dan.Oconnor

	Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
	#jira FORT-23753

Change 3016577 on 2016/06/16 by Ryan.Rauschkolb

	Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType

Change 3016906 on 2016/06/16 by Dan.Oconnor

	Back out changelist 3016557
	This will be done by Jamie.Dale in Dev-Editor

Change 3018081 on 2016/06/17 by Phillip.Kavan

	[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)

	#jira UE-31832

Change 3018402 on 2016/06/17 by Dan.Oconnor

	Missing include

Change 3018426 on 2016/06/17 by Ryan.Rauschkolb

	Fixed MakeArray node with split pins and no connections does not paste correctly
	#jira UE-32148

Change 3018452 on 2016/06/17 by Mike.Beach

	Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).

	#jira UE-32158

Change 3018456 on 2016/06/17 by Dan.Oconnor

	Fix for static analysis warning, this null check does nothing

Change 3018595 on 2016/06/17 by Mike.Beach

	Fix for shadowed variable warning in CIS.

Change 3018699 on 2016/06/17 by Mike.Beach

	Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).

Change 3019734 on 2016/06/20 by Phillip.Kavan

	[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.

	change summary:
	- added a UK2Node_AddComponent::PostDuplicate() override
	- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.

	notes:
	- will prevent getting into the scenario described in UE-31831

	#jira UE-32064

Change 3020635 on 2016/06/20 by Dan.Oconnor

	Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)

Change 3020894 on 2016/06/21 by Maciej.Mroz

	#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)

Change 3020958 on 2016/06/21 by Ben.Cosh

	This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
	#Jira UE-32270 - Input key events generate extra instrumentation data per key press
	#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
	#Proj BlueprintProfiler, UnrealEd

Change 3021316 on 2016/06/21 by Ryan.Rauschkolb

	Fixed issue where Copy/Paste of event nodes would not retain link information

Change 3021826 on 2016/06/21 by Phillip.Kavan

	[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.

	change summary:
	- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
	- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates

	#jira UE-31831

Change 3022047 on 2016/06/21 by Ryan.Rauschkolb

	Fixed issue where copy/paste of return nodes would not preserve value or link data
	#jira UE-26937

Change 3022619 on 2016/06/22 by Maciej.Mroz

	#jira UE-30858 Nativized Orion - Some particle effects are not rendering

	A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
	It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
	Fixed GameplayCueManager. Nativized cues can be found.

	This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).

Change 3022654 on 2016/06/22 by Maciej.Mroz

	FBackendHelperStaticSearchableValues -fixed  too strict ensure

Change 3023067 on 2016/06/22 by Maciej.Mroz

	#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project

	Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.

Change 3023222 on 2016/06/22 by Ryan.Rauschkolb

	Fixed MakeArray node elements break when editing struct elements
	#jira UE-21392

Change 3023405 on 2016/06/22 by Mike.Beach

	Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).

	#jira UE-31897

Change 3023992 on 2016/06/22 by Mike.Beach

	Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.

	#jira UE-31859

[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
Marc Audy
eb44cd9882 Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden
#rb None

[CL 3016298 by Marc Audy in Main branch]
2016-06-16 11:54:44 -04:00
Robert Manuszewski
c286891992 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3012371)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2970419 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.
	warning C6011: Dereferencing NULL pointer '...'.
	warning C6385: Reading invalid data from '...':  the readable size is '...' bytes, but '...' bytes may be read.
	warning C6386: Buffer overrun while writing to '...':  the writable size is '...' bytes, but '...' bytes might be written.

Change 2997665 on 2016/06/02 by Graeme.Thornton

	Fix parameter parsing bug in corrupt tool

Change 2997947 on 2016/06/02 by Steve.Robb

	Fix for return value from FOnlineSessionMcp::UpdateSession.

Change 3000182 on 2016/06/03 by John.Mahoney

	PR #2234: Fix NullReferenceException to connect to coordinator (Contributed by projectgheist)

	#jira UE-29063

Change 3000355 on 2016/06/03 by John.Mahoney

	Fix for crash caused by trying to serialize a package larger than 2 GB to memory while cooking, usually due to unusually large light maps.
	Replaced the TArray-based memory archives used in UPackage::SavePackage with a new FLargeMemoryWriter/Reader that uses a raw memory buffer internally.

	#jira UE-22912

Change 3001673 on 2016/06/06 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'KeyState'

Change 3001963 on 2016/06/06 by John.Mahoney

	Fix for AutomationTool crash when deploying to default PS4 devkit. When a DeviceName is not specified on the command line, the PS4DevKitUtil.exe Detail command will return the details of the default connected device. If the device's filesystem is mapped by name instead of IP, the name should be parsed from the result and used to build the BaseTargetPath.

Change 3001974 on 2016/06/06 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 3003781 on 2016/06/07 by Steve.Robb

	New TWeakObjectPtrMapKeyFuncs to be used for maps containing TWeakObjectPtr keys, without invalidating the map when the pointer becomes stale.
	Fix for UNetConnection::ActorChannels which suffered from this problem.

Change 3003855 on 2016/06/07 by Steve.Robb

	VS debugger visualization of TTuples up to 6 elements.

Change 3003864 on 2016/06/07 by Steve.Robb

	Reapply optimizations to FString::MatchesWildcard reverted in CL# 2992738.

Change 3003944 on 2016/06/07 by Steve.Robb

	Back out changelist 3003864

Change 3004198 on 2016/06/07 by Steve.Robb

	TIsTriviallyDestructible added, needed to move away from amalgamated type traits, which can cause spurious compile errors.
	DestructItem added.

Change 3005586 on 2016/06/08 by Steve.Robb

	jpeg_decoder::stop_decoding made ((no_return)) again, but with an exit() call to ensure that it doesn't cause compile errors in Android builds.

Change 3005633 on 2016/06/08 by Steve.Robb

	Static analysis fixes:

	warning C28216: The checkReturn annotation only applies to postconditions for function 'Func' _Param_(N)

Change 3005839 on 2016/06/08 by Steve.Robb

	Fix for warning C6011: Dereferencing NULL pointer 'RepState'.

Change 3005857 on 2016/06/08 by Steve.Robb

	Fix for warning C28182: Dereferencing NULL pointer. 'CinematicShotSection' contains the same NULL value as 'ShotSection' did.

Change 3005860 on 2016/06/08 by Steve.Robb

	Fix for warning C6011: Dereferencing NULL pointer 'this->Keys[Index]'.

Change 3006175 on 2016/06/08 by Steve.Robb

	Additional information about the class which is failing to reload.

	#jira UE-28599

Change 3006524 on 2016/06/08 by Ben.Marsh

	Fix compile error introduced in CL 3006175

Change 3006815 on 2016/06/08 by Ben.Marsh

	Enable static analysis as part of build process for dev branches.

Change 3007606 on 2016/06/09 by Steve.Robb

	Fixes for 'inconsistent annotation warnings' in SDK code.

Change 3007679 on 2016/06/09 by Steve.Robb

	Fixes for 'inconsistent annotation warnings' in SDK code.

Change 3008125 on 2016/06/09 by John.Mahoney

	Fix for DLC paks mapping file paths relative to the GameDir instead of the RootDir.

	#jira UE-31250

Change 3008763 on 2016/06/10 by Steve.Robb

	New TArray::EmplaceAt function.

Change 3008780 on 2016/06/10 by Steve.Robb

	Non-variadic delegate implementation deleted.

Change 3008820 on 2016/06/10 by Robert.Manuszewski

	Merging UnrealHeaderTool optimizations from a partners branch.

Change 3008850 on 2016/06/10 by Steve.Robb

	Removal of PLATFORM_COMPILER_HAS_VARIADIC_TEMPLATES.

Change 3008905 on 2016/06/10 by Graeme.Thornton

	MemoryProfiler2 - Deselect current bar when clicking off the histogram. Allows user to see the top level group data again

Change 3008933 on 2016/06/10 by Steve.Robb

	Removal of PLATFORM_COMPILER_HAS_DEFAULT_FUNCTION_TEMPLATE_ARGUMENTS.

Change 3009130 on 2016/06/10 by John.Mahoney

	Fix for crash when pasting T3D data from the clipboard into the content browser. Since the content browser is only expecting a list of object paths, it should avoid trying to process pasted T3D altogether.

	#jira UE-31459

Change 3010712 on 2016/06/13 by Steve.Robb

	Splitting up of TTypeTraits into individual traits to avoid erroneous VC compilation errors.
	Use of TAnd/TOr to short-circuit many compile-time traits checks.
	Renaming of traits classes (except TIsPODType) to closer match the standard.

Change 3010714 on 2016/06/13 by Steve.Robb

	*_Variadics.h delegate headers renamed to just *.h.

Change 3010719 on 2016/06/13 by Steve.Robb

	Redundant suffixes removed from delegate macros.

Change 3010720 on 2016/06/13 by Steve.Robb

	Fix for defaulted functions and other compiler settings.
	Workaround for spurious compiler errors in generated functions which ultimately reference other deleted functions.

	See: https://connect.microsoft.com/VisualStudio/feedback/details/2612308

Change 3010721 on 2016/06/13 by Steve.Robb

	Removal of TTuple::ApplyAfter_ExplicitReturnType in preparation of making TTuple a first class citizen of UE4.
	New MakeTuple and TransformTuple generator functions.
	New Lexicographical::ToString overloads for const CharType* and bool.

Change 3010783 on 2016/06/13 by Steve.Robb

	Fix for TTransformTuple_Impl::Do return type.
	Fix for Clang error.

Change 3010995 on 2016/06/13 by Robert.Manuszewski

	Fixing compile errors when leak detection and verify mallocs are enabled due to changes in their base class.

Change 3012221 on 2016/06/14 by Graeme.Thornton

	Fixes for MemoryAnalyser2 solution
	 - Upgraded to VS 2015
	 - Clean up solution configurations. Only leave "Any CPU"
	 - Switch project to build with "Any CPU" rather than "x64".

Change 3012328 on 2016/06/14 by Steve.Robb

	Make checks assume even in !DO_CHECK builds.  This fixes some SA warnings as well as possibly making those builds more optimal.

Change 3012363 on 2016/06/14 by Steve.Robb

	Static analysis fixes: warning C28251: Inconsistent annotation for 'Func'

Change 3012371 on 2016/06/14 by Steve.Robb

	Static analysis fixes: warning C28251: Inconsistent annotation for 'Type'

#lockdown Nick.Penwarden
#rb none

[CL 3012829 by Robert Manuszewski in Main branch]
2016-06-14 12:28:12 -04:00
Robert Manuszewski
f4fb4b8596 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 2996057)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2975196 on 2016/05/12 by Robert.Manuszewski

	Garbage Collector will no longer be responsible for generating class token stream, instead the token stream will be generated on startup or when a class has finished loading.

	- This way we can avoid very long GC times after new blueprints have been loaded.
	- Temporarily enabled CLASS_TokenStreamAssembled check in development builds (for testing purposes)

Change 2993960 on 2016/05/30 by Robert.Manuszewski

	Fixing leaked linkers created by blocking load requests during async loading.

Change 2959398 on 2016/04/28 by Steve.Robb

	TMap references are strong and cannot be nulled by pending kill.  This makes references in values strong too, even though we only really care about keys, which will corrupt the map when nulled.

	#jira UE-20828

Change 2960723 on 2016/04/29 by Graeme.Thornton

	Fix for texture asset import data being ignored when async loaded

Change 2960938 on 2016/04/29 by Robert.Manuszewski

	Nulling out sql db handle after closing it.

Change 2967127 on 2016/05/05 by Steve.Robb

	Move constructors explicitly disabled in generated code.

Change 2967143 on 2016/05/05 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2967164 on 2016/05/05 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer

Change 2968650 on 2016/05/06 by Steve.Robb

	Fix for HotReload copying module manager.

Change 2968915 on 2016/05/06 by Robert.Manuszewski

	Fixing spelling of SetImageIntegrityStatus function name.

Change 2970406 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	Function uses '...' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.

Change 2970419 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.
	warning C6011: Dereferencing NULL pointer '...'.
	warning C6385: Reading invalid data from '...':  the readable size is '...' bytes, but '...' bytes may be read.
	warning C6386: Buffer overrun while writing to '...':  the writable size is '...' bytes, but '...' bytes might be written.

Change 2970431 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6299: Explicitly comparing a bit field to a Boolean type will yield unexpected results.

Change 2972032 on 2016/05/10 by Steven.Hutton

	Workflow fixes to bugg / crashgroup filtering. Filters should now correctly persist across queries.

Change 2972085 on 2016/05/10 by Steve.Robb

	Const-correctness fix for FLogCategoryBase::IsSuppressed.

Change 2972087 on 2016/05/10 by Steve.Robb

	ELogVerbosity moved into its own header.

Change 2972090 on 2016/05/10 by Steve.Robb

	Redundant ensure removed.

Change 2972103 on 2016/05/10 by Steve.Robb

	Removal of redundant use of USING_CODE_ANALYSIS.

Change 2972139 on 2016/05/10 by Steve.Robb

	Fix for ensure macros throwing C6326 warnings during static analysis.

Change 2972147 on 2016/05/10 by Steve.Robb

	Fix for UE_LOG_ACTIVE macro throwing C6326 warnings during static analysis.

Change 2972162 on 2016/05/10 by Steve.Robb

	SCOPE_CYCLE_COUNTER_GUARD removed.

Change 2972168 on 2016/05/10 by Steve.Robb

	Compile error fix for logOrEnsureNanError in static analysis builds.

Change 2973084 on 2016/05/10 by Chris.Wood

	Crash Report Server performance tweak

Change 2974030 on 2016/05/11 by Steve.Robb

	Fix for IPropertyHandle::SetValue - used to take a non-const reference to a const UObject*, now it takes const references to both non-const and const UObject*.

Change 2974053 on 2016/05/11 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2974191 on 2016/05/11 by Steve.Robb

	Fix for template instantiation error in VS2013.

Change 2975298 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 2975318 on 2016/05/12 by Steve.Robb

	Fix for hot reload info being reported as warnings.

	#jira UE-30586

Change 2975447 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6235: (<non-zero constant> || <expression>) is always a non-zero constant.
	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.  Did you intend to use the bitwise-and operator?
	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.  Did you intend to use the bitwise-and operator?
	warning C6285: (<non-zero constant> || <non-zero constant>) is always a non-zero constant.  Did you intend to use the bitwise-and operator?
	warning C6286: (<non-zero constant> || <expression>) is always a non-zero constant.  <expression> is never evaluated and might have side effects.
	warning C6289: Incorrect operator:  mutual exclusion over || is always a non-zero constant.  Did you intend to use && instead?
	warning C6316: Incorrect operator:  tested expression is constant and non-zero.  Use bitwise-and to determine whether bits are set.

Change 2975478 on 2016/05/12 by Steve.Robb

	Static analysis fixes for lots of redundant <zero constant> and <non-zero constant> warnings.

Change 2975538 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'StaticResource'

Change 2976640 on 2016/05/13 by Robert.Manuszewski

	Fixing crashes caused by token stream generation changes. Making sure the token stream gets re-generated when a class gets re-linked.

	#jira UE-30675

Change 2978320 on 2016/05/16 by Steve.Robb

	Fix for static analysis warnings in XNA headers.

Change 2978329 on 2016/05/16 by Steve.Robb

	Static analysis fixes:

	warning C6334: sizeof operator applied to an expression with an operator might yield unexpected results:  Parentheses can be used to disambiguate certain usages.

Change 2980222 on 2016/05/17 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 2980458 on 2016/05/17 by Chris.Wood

	Attempt to fix crash report submission problems from CRP to CR website
	[UE-30257] - Crashreports are sometimes missing file attachments

	Passing crash GUID so that website can easily check for duplicates in future
	Increased request timeout for AddCrash to be longer than website database timeout
	Logging retries for future visibility
	CRP v.1.1.6

Change 2980639 on 2016/05/17 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 2981750 on 2016/05/18 by Steve.Robb

	check()s in ContainerAllocationPolicies.h changed to checkSlow()s, as they only exist to check that the container has been written correctly.

Change 2982106 on 2016/05/18 by John.Mahoney

	Fixed a crash caused by loading two stat capture files simultaneously in the profiler.
	If the user tries to load a capture file while another load is in progress, the previous load is now cancelled and cleaned up before proceeding with the new load.
	Made the delegates in FNewStatsReader explicitly specify which profiler instance they are loading data for, instead of relying on the current value of LoadConnection->InstanceId.
	This also fixes a crash that occurs when selecting a different capture file in the "Stats dump browser" pane of the profiler (after using Load Folder) while another file is still loading.
	Cleaned up some weak pointer usage in the profiler window.

	#jira UE-30741

Change 2983366 on 2016/05/19 by Steven.Hutton

	Changes for passing crash type directly from CRP to CRW.

Change 2983394 on 2016/05/19 by Steven.Hutton

	Minor changes to add crash with more error reporting

Change 2984685 on 2016/05/20 by Robert.Manuszewski

	Merging //UE4/Dev-Main @ 2984626 to Dev-Core (//UE4/Dev-Core)

Change 2985143 on 2016/05/20 by Steve.Robb

	Missing semi-colons.

Change 2986463 on 2016/05/23 by Steve.Robb

	CopyTemp added to make it clear that you want to make a copy (rather than a move, or an accidental copy) at the call site of a function taking rvalue refs.

Change 2986475 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6313: Incorrect operator:  zero-valued flag cannot be tested with bitwise-and.

Change 2986476 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6313: Incorrect operator:  zero-valued flag cannot be tested with bitwise-and.

Change 2986480 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant

Change 2986515 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6340: Mismatch on sign: 'X' passed as _Param_(N) when some unsigned type is required in call to 'Func'

Change 2986680 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'Ptr':  the writable size is 'X' bytes, but 'Y' bytes might be written.
	warning C6387: 'Ptr' could be '0':  this does not adhere to the specification for the function 'Func'
	warning C6031: Return value ignored: 'snprintf'.
	warning C6340: Mismatch on sign: 'const unsigned int' passed as _Param_(4) when some signed type is required in call to 'snprintf'.

Change 2986865 on 2016/05/23 by Robert.Manuszewski

	Removing redundand AddReferencedObjects functions

Change 2987968 on 2016/05/24 by Robert.Manuszewski

	Removing redundant UPROPERTY macros from intrinsic classes.

Change 2987979 on 2016/05/24 by Steve.Robb

	Optimization of some FString and FPaths operations to produce fewer temporaries.

Change 2988297 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 2988430 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6385: Reading invalid data from 'var':  the readable size is 'X' bytes, but 'Y' bytes may be read.

Change 2988461 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6235: (<non-zero constant> || <expression>) is always a non-zero constant.
	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.
	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.

Change 2988464 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6262: Function uses 'X' bytes of stack:  exceeds /analyze:stacksize 'Y'.  Consider moving some data to heap.

Change 2988494 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 2989411 on 2016/05/25 by Robert.Manuszewski

	Splitting GC cluster index and intenral object flags to allow more UObjects in editor builds.

Change 2989429 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6387: '_Param_(X)' could be '0':  this does not adhere to the specification for the function 'Func'.

Change 2989982 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory 'LODPlanesMin'.

Change 2990018 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'X'

Change 2990077 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.
	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2990114 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent.

Change 2990125 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.

Change 2990162 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6294: Ill-defined for-loop:  initial condition does not satisfy test.  Loop body not executed.

Change 2990193 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'type' contains the same NULL value as 'type->base_type' did.
	warning C6011: Dereferencing NULL pointer 'Semantic'.

Change 2991006 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C28113: Accessing a local variable dummy via an Interlocked function:  This is an unusual usage which could be reconsidered.

Change 2991012 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6031: Return value ignored: 'InitializeCriticalSectionAndSpinCount'.

Change 2991013 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 2991016 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 2991017 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2991019 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6292: Ill-defined for-loop:  counts up from maximum.

Change 2991023 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6322: Empty _except block.
	warning C28251: Inconsistent annotation for 'WinMain': this instance has no annotations.

Change 2991070 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'Ptr1' contains the same NULL value as 'Ptr2' did.

Change 2991416 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2992738 on 2016/05/27 by Steve.Robb

	Revert changes to FString::MatchesWildcard.

Change 2992916 on 2016/05/27 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2992960 on 2016/05/27 by Chris.Wood

	Optimized P4 access in Crash Report Process and MinidumpDiagostics.

Change 2992964 on 2016/05/27 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2993956 on 2016/05/30 by Robert.Manuszewski

	Fixing a crash after adding a new C++ class in the editor - made sure new classes have the token stream assembled after hot-reload.

	#jira UE-31309

Change 2993977 on 2016/05/30 by Robert.Manuszewski

	Don't wait for all packages to finish loading before PostLoading those which already have.

Change 2994206 on 2016/05/31 by Robert.Manuszewski

	PR #2429: Three bug fixes required for script support to work properly (Contributed by pluranium)

#lockdown Nick.Penwarden

[CL 2996251 by Robert Manuszewski in Main branch]
2016-06-01 12:08:56 -04:00
Dan Oconnor
575f683dc0 Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 2984628)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2972003 on 2016/05/10 by Maciej.Mroz

	Fixed build process for nativized Orion. When UBT commandline includes "-2015" switch, the Orion will be compiled with VS2015.

Change 2972004 on 2016/05/10 by Maciej.Mroz

	Removed unnecessary comment

Change 2972177 on 2016/05/10 by Maciej.Mroz

	Changed check() in UEdGraphSchema_K2::CreateSubstituteNode into ensure(). It fails for BP_GMM_Trainer asser (from Orion).

Change 2972313 on 2016/05/10 by Ben.Cosh

	Adding support for the blueprint profiler execution path wire heat display which includes SlateCore support for color gradient splines.
	#UEBP-103 - Execution path wire heat display
	#Proj BlueprintProfiler, GraphEditor, Kismet, UnrealEd, SlateCore

	#CodeReview Phillip.Kavan

Change 2974089 on 2016/05/11 by Maciej.Mroz

	#jira UE-30557
	NaN value is replaced by 0.0f while nativization.

Change 2974447 on 2016/05/11 by Maciej.Mroz

	Fixed (in nativized code) strange C4883 error in VS2015 update 2.

Change 2974601 on 2016/05/11 by Mike.Beach

	Fixing FText formatting warning, coming from the GameMode menu.

	#jira UE-29901

Change 2974882 on 2016/05/11 by Dan.Oconnor

	Fix for changes that only affected case being dropped by the blueprint editor (only effectied pins in graph view)
	#jira UE-29750

Change 2977298 on 2016/05/13 by Ryan.Rauschkolb

	Fixed Spelling error in Tooltip for "Save On Compile" in BP Editor
	#jira UE-20392

Change 2977299 on 2016/05/13 by Ryan.Rauschkolb

	Fixed Wrong Tooltip for "Keywords" and "Compact Node" in Macro Library Derived from an Actor
	#jira UE-29894

Change 2977486 on 2016/05/13 by Ryan.Rauschkolb

	Fixed "Asterisk" is misspelled as "Asterix" in a Blueprint Node
	#jira UE-21579

Change 2977497 on 2016/05/13 by Mike.Beach

	Clearing property nodes and cached read-addresses when changing the details view object (so any queued actions will not operate on invalid properties).

	#jira UE-26392

Change 2977898 on 2016/05/14 by Maciej.Mroz

	BP Nativization:
	Name of native enum (converted from UDE) is mangled.

Change 2977915 on 2016/05/14 by Maciej.Mroz

	Fixed UKismetNodeHelperLibrary::GetValidValue

Change 2978934 on 2016/05/16 by Maciej.Mroz

	Blueprint nativiation fix:
	Original owner od delegate is no longer added as "header dependency". THe delegates signatures are recreated in local scope anyway.
	This change solves some circularly dependent headers errors (UHT error)

Change 2978985 on 2016/05/16 by Bob.Tellez

	Duplicating CL#2969542 from //Fortnite/Main

	#UE4 Fixed a crash that involved renaming SCS nodes during compile on load.

	#JIRA FORT-23754

Change 2979069 on 2016/05/16 by Maciej.Mroz

	#jira UE-28536 Attached Project Crashes on Attempting to Play in Standalone
	A too strict check (in UEdGraphSchema_K2::ArePinTypesCompatible) is replaced by an error log.

Change 2980131 on 2016/05/17 by Ben.Cosh

	This changes the macro displays in the execution graph to improve the logical layout of stats.
	#Jira UEBP-192 - Update the macro appearance in the execution graph
	#Proj Kismet, BlueprintProfiler

Change 2980483 on 2016/05/17 by Ryan.Rauschkolb

	Fixed Copy/paste of Make Array loses type and values
	#jira UE-16240

Change 2980764 on 2016/05/17 by Ryan.Rauschkolb

	Added "Get All Actors With Tag" node
	#jira UE-28769

Change 2982120 on 2016/05/18 by Mike.Beach

	Preventing a crash that can happen when a UWorld TObjectIterator hits worlds that aren't in the engine's WorldList.

Change 2983265 on 2016/05/19 by Ben.Cosh

	Fix for Blueprint profiler Min/Max stats considering both exclusive and inclusive timings
	#Jira UE-31004 - The blueprint profiler displays different values for min and max stats when only a single sample is present.
	#Proj Kismet

#lockdown nick.penwarden

[CL 2985633 by Dan Oconnor in Main branch]
2016-05-20 16:22:44 -04:00
Unrealbot
3f463d80d4 Branch snapshot for CL 2959226
[CL 2959226 in Main branch]
2016-04-28 13:50:05 -04:00
Marc Audy
b8d61c189f Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main) @ 2944217
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2899855 on 2016/03/08 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 2899785

Change 2926689 on 2016/03/29 by Jeff.Farris

	AAIController::SetFocus() will now implicitly clear any location focus at the same priority.

	UE-27975

	#rb john.abercrombie

Change 2926690 on 2016/03/29 by Jeff.Farris

	Using wildcard operator with the "KismetEvent" or "ke" console commands will now only trigger the event on objects in the world in which it was triggered. Prevents badness with running events on things like CDOs and editor actors. (UE-23106)

Change 2926691 on 2016/03/29 by mason.seay

	Content for testing collision on scaled components

Change 2926692 on 2016/03/29 by Jeff.Farris

	- FixupDeltaSeconds now considers time dilation when clamping.
	- Acceptable range for time dilation values is now a config parameter on WorldSettings
	- Acceptable range for undilated frame times is now a config parameter on WorldSettings

	(UE-27815)

	#rb marc.audy

Change 2926711 on 2016/03/29 by Ori.Cohen

	Fix constraint rendering when scaling a cosntraint actor

	#JIRA UE-28691, UE-28700
	#rb Lina.Halper

Change 2926745 on 2016/03/29 by Lukasz.Furman

	navigation filters can now be instantiated per querier - usually AI agent
	required for FORT-21372

Change 2926789 on 2016/03/29 by Ori.Cohen

	Downgrade check to ensure for 2d physics during a hard shutdown

	#rb Michael.Noland

Change 2926859 on 2016/03/29 by Ori.Cohen

	Fix red herring warnings of not locking physx scenes during hard shutdown.

	#JIRA UE-28747
	#rb Michael.Noland

Change 2927444 on 2016/03/30 by Thomas.Sarkanen

	Fixed Blueprint compiler errors when resetting timer handles

	Added basic support for 64-bit int/uint terms to Blueprint. This allows the use of opaque 64-bit integer types inside of BlueprintType structs, it in no way means that 64-bit ints are fully supported in Blueprint.
	Corrected a left-over formatting oversight when converting a FTimerHandle to a string.
	Added new by-ref "Clear and Invalidate Timer by Handle" function to Blueprint system library & deprecated old version.

	#rb Maciej.Mroz (and a few others!)
	#jira UE-28833 - Unresolved compiler error for B_Pickups blueprint in Fortnite

Change 2927520 on 2016/03/30 by Jurre.deBaare

	Should not allow skeletal mesh components mobility to be set to static, but detach instead

	#fix Added CanHaveStaticMobility to SceneComponent class, and check this when trying to propogate Static mobility to parent component
	#jira UE-26364

Change 2927533 on 2016/03/30 by Jurre.deBaare

	Static Mesh Merge tool: when merging from multiple blueprints, fails to combine same materials
	#fix Material index remapping was part of if-clause where it shouldn't be
	#jira UE-23827

	Static Mesh Merge tool, failed to combine physics data if using complex
	#fix Required copying the SectionInfoMap from source static meshes

	HLOD/MergeActor - Vertex Colours are not correctly propagated to negatively scaled meshes
	#fix had to re-order function calls
	#jira UE-28316

	#rb James.Golding

Change 2927535 on 2016/03/30 by Ori.Cohen

	Make sub-stepping run on game thread

	#JIRA UE-24011
	#rb Gil.Gribb

Change 2927537 on 2016/03/30 by Jurre.deBaare

	Warning message when HLOD mesh > 65536 vertices

	#jira UE-22365
	#fix added messages when building proxy mesh

Change 2927691 on 2016/03/30 by Jeff.Farris

	Fixed potential PlayerState leak (UE-22700)

Change 2927692 on 2016/03/30 by Lina.Halper

	Allow it to select any name they want other than just restrict to what we have.

	- I think it may not be the best solution but with current widget built, you can't even clear name, which is problem.

	- Other solution is to add "Clear" as a name, and when that gets entered, we just clear it, but then the X button is odd and no purpose being there.

	- I think we should just allow them to choose if they don't like it but with suggestions.

	#rb: Ori.Cohen
	#jira UE-27786
	#code review: Benn.Gallagher

Change 2927853 on 2016/03/30 by Lina.Halper

[CL 2944273 by Marc Audy in Main branch]
2016-04-14 16:25:11 -04:00
Mike Beach
a9cb932f24 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2884592 on 2016/02/27 by Maciej.Mroz

	Packages containing Dynamic Types are listed as dependencies in FAsyncPackage::LoadImports

	#codereview Robert.Manuszewski

Change 2884607 on 2016/02/27 by Maciej.Mroz

	CDO of DynamicClass is postponed as a regular CDO creation.

	This change is risky (it still requires some tests), but it seems to be necessary for solving (cyclic) dependencies while Async Loading.

	#codereview Robert.Manuszewski, Mike.Beach

Change 2885915 on 2016/02/29 by Michael.Schoell

	Struct pins on exposed on spawn properties will no longer error on compile if they do not have a pin connected to them.

	UKismetSystemLibrary::SetStructurePropertyByName's Value pin is now marked as a AutoCreateRefTerm so literals can be used on the auto-generated node.

	Modified FKismetCompilerUtilities::GenerateAssignmentNodes to assign the literal value into the pin, which in turn allows it to expand into an auto-ref term.

	#jira UE-23130 - ExposeOnSpawn struct properties are not handled correctly

Change 2887269 on 2016/03/01 by Maciej.Mroz

	Fixes related to DisregardForGC:
	- merged 2885687 from Dev-Core branch
	- ensure CDO of newly added class is created in CloseDisregardForGC

Change 2887273 on 2016/03/01 by Maciej.Mroz

	GUObjectArray.CloseDisregardForGC(); is called before GUObjectArray.DisableDisregardForGC();

Change 2892502 on 2016/03/03 by Maciej.Mroz

	More descriptive ensures.

Change 2892509 on 2016/03/03 by Maciej.Mroz

	Minor changes in Orion code, necessary to compile the project with nativized Blueprints

	#codereview David.Ratti

Change 2892513 on 2016/03/03 by Maciej.Mroz

	Blueprint C++ Conversion: there is no crash when a asset used by a nativized class wasn't loaded.

Change 2894347 on 2016/03/04 by Michael.Schoell

	Fixed crash with the Array Item Get node in the disassembler.

	#jira UE-27734 - Error in TeamLobby

Change 2895311 on 2016/03/04 by Michael.Schoell

	Right click and using "Find References" on an event node in either the MyBlueprint window or a graph panel, will search the function's name, not the node's title (drops the Event text).

	#jira UE-27335 - GitHub 2092 : Skip "Event " Prefix when Finding References for Events
	PR #2092: Skip "Event " Prefix when Finding References for Events (Contributed by mollstam)

Change 2896714 on 2016/03/07 by Ben.Cosh

	Fixes for a few related crash/assert issues when profiling blueprints that use event dispatchers/call event functions and latent nodes.
	#UE-27090 - Crash when calling an Event Dispatcher within a Sequence node with the Blueprint Profiler on
	#Proj KismetCompiler, BlueprintProfiler, BlueprintGraph, Kismet, CoreUObject

	#codereview Phillip.Kavan

Change 2897335 on 2016/03/07 by Dan.Oconnor

	Unshelved from pending changelist '2889006':

	We now copy UObjects that are assigned to Instance properties via  UObjectPropertyBase::ImportText_Internal

	#jira UE-26310

Change 2899151 on 2016/03/08 by Phillip.Kavan

	[UEBP-112] BP profiler - pure node timings

	change summary:
	- first-pass revisions for tracking/visualizing pure node execution timings while profiling
	- trace path debugging support (default: off)

	#codereview Ben.Cosh

Change 2901763 on 2016/03/09 by Michael.Schoell

	Can undo/redo nodes added using shortcuts.

	Also fixed issue with macro nodes added using shortcuts not being selected.

	#jira UE-28027 - Cannot Undo Blueprint Nodes Placed Using Shortcuts

Change 2902762 on 2016/03/10 by Phillip.Kavan

	[UE-28167] Fix compile-time crash caused by intermediate pure nodes when the BP profiler view is active.

	change summary:
	- modified FBlueprintExecutionContext::MapNodeExecution() to avoid impure nodes when mapping the pure node execution chain.

	#codereview Ben.Cosh

Change 2907961 on 2016/03/14 by Maciej.Mroz

	#jira UE-28249 Cooked win32 Fortnite server crash loading in to FastCook map
	Manually integrated CL#2906835 from Dev-Core - Reset last non-gc index when disabling disregard for GC pool

Change 2908013 on 2016/03/14 by Maciej.Mroz

	EmptyLinkFunctionForGeneratedCode function for all .generated.*.cpp files
	Fixed problem when stuff from some .generated.*.cpp files for nativized Blueprints plugin were not linked at all.

	#codereview Robert.Manuszewski, Steve.Robb

Change 2908033 on 2016/03/14 by Maciej.Mroz

	Various fixes and improvements related to initialization sequence of converted Dynamic Classes.

[CL 2910931 by Mike Beach in Main branch]
2016-03-15 19:07:47 -04:00
Mike Beach
02ac030a91 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2865817 on 2016/02/12 by Mike.Beach

	Handling deferred (cyclic) dependency issues that arrise from imports not found within the linker's ImportMap (imports loaded from config files and UProperty::ImportText).

	#jira UE-26756
	#codereview Robert.Manuszewski

Change 2866282 on 2016/02/13 by Maciej.Mroz

	Blueprint C++ Conversion:
	- Added CustomDynamicClassInitialization meta data and function
	- References to other converted fields are gathered before CDO is created (it solves many dependencies)

	#codereview Robert.Manuszewski

Change 2867921 on 2016/02/15 by Mike.Beach

	Fixing (CIS error) typo - Accidently assigning uninitialized variable to itself.

Change 2867970 on 2016/02/15 by Mike.Beach

	Removing "static" keyword on template specializations (CIS error).

Change 2868401 on 2016/02/16 by Maciej.Mroz

	TBaseStructure for more noexport structures

Change 2868404 on 2016/02/16 by Maciej.Mroz

	Blueprint C++ Conversion:
	- Fixed some issues related to NOEXPORT structures
	- Added  FEmitDefaultValueHelper::SpecialStructureConstructor

Change 2868461 on 2016/02/16 by Maciej.Mroz

	Blueprint C++ Conversion:
	- Fixed component initialization in actors, based on a DynamicClass

Change 2868481 on 2016/02/16 by Maciej.Mroz

	Blueprint C++ Conversion: (Work in progress.)
	In BPGC templates cor SCS components are owned by the class. In DynamicClass the templates are owned by CDO. It requires to update the import path, when a component template is referenced by an extern object.

	#codereview Robert.Manuszewski, Dan.Oconnor

Change 2868769 on 2016/02/16 by Maciej.Mroz

	Improved parsing for multi-parameter AutoCreateRefTerm meta data

Change 2870310 on 2016/02/17 by Ben.Cosh

	Incremental refactor and update for the blueprint profiler.

	- Shuffled files around and renamed to make the layout more informational
	- Added profiler capture and playback contexts
	- Added blueprint and function contexts, this enables rapid stat discards in situations such as blueprint compilation.
	- Moved the blueprint execution mapping out of the profiler and into the blueprint contexts
	- Refactored the event playback so it processes with one event at a time.

	#CodeReview Phillip.Kavan

Change 2870386 on 2016/02/17 by Maciej.Mroz

	Improved  UProperty::ExportCppDeclaration - Const reference to a pointer should be: "Type* const &" , not "const Type* &".

	#codereview Steve.Robb

Change 2870686 on 2016/02/17 by Nick.Whiting

	Engine changes needed for Bullet Train compatibility:
	- Adding BP-exposed GetClosestBone function, with ability to optionally filter only bones associated with physics assets
	- Exposing GetRemoteRole to BPs

Change 2871419 on 2016/02/17 by Mike.Beach

	Fixing CIS incude error.

	#codereview Ben.Cosh

Change 2872190 on 2016/02/18 by Mike.Beach

	Another CIS fix - forward declaring a class that wasn't included.

	#codereview Ben.Cosh

Change 2872285 on 2016/02/18 by Maciej.Mroz

	added bDontNativizeDataOnlyBP in Editor.ini

Change 2872826 on 2016/02/18 by Ben.Cosh

	CIS fixes for mac builds

	#codereview Dan.Oconnor, Mike.Beach

Change 2874284 on 2016/02/19 by Mike.Beach

	Supporting nested struct properties that are filled out through text imports during deferred dependency loading.

	#codereview Robert.Manuszewski

Change 2874299 on 2016/02/19 by Mike.Beach

	CIS fix - macro typo in non-debug build.

Change 2875571 on 2016/02/22 by Maciej.Mroz

	Blueprint C++ Conversion:
	Fixed generated FCompiledInDeferStruct instance for nativized structs. It has a proper overriden name.

Change 2875574 on 2016/02/22 by Maciej.Mroz

	Blueprint C++ Conversion:
	Class type of unconverted asset is not replaced in import map while cooking.

Change 2875741 on 2016/02/22 by Michael.Schoell

	Array Item Get nodes now return by-ref.

	All use cases of the node, as well as use cases of ForEachLoop and ForEachLoopWithBreaks, have been updated to use a Copy node on the output to maintain any existing functionality.

[CL 2884111 by Mike Beach in Main branch]
2016-02-26 16:58:26 -05:00
Robert Manuszewski
691af53b8b Copying //UE4/Dev-Core to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2860239 on 2016/02/09 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Strip unnecessary UMaterialExpressions from cooked packages.

Change 2872941 on 2016/02/18 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Fixing missing materials in cooked builds:

	- FExpressionInput::Expression can now only be used in editor builds
	- Added FExpressionInput::ExpressionName which can be used in cooked builds to check if the input was connected
	- FExpressionInput and derived structs will now use native serialization
	- Keeping a few more material expressions types in cooked builds

Change 2863269 on 2016/02/11 by Steve.Robb@Dev-Core

	MallocBinned2 is now internally threadsafe.

Change 2866771 on 2016/02/15 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Temp HACK for slow cook times (waiting for Anim Team to fix it properly)

Change 2873372 on 2016/02/19 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	Print the max number of UObjects when someone tries to allocate too many of them.

Change 2861582 on 2016/02/10 by Steve.Robb@Dev-Core

	Fix for illegal access of StaticClass() at module shutdown.

Change 2862906 on 2016/02/11 by Steve.Robb@Dev-Core

	Per-thread caches and global recycler.

Change 2863366 on 2016/02/11 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Fixing ReferenceChainSearch not using the right garbage collection keep flags.
	Added gc.FindStaleClusters console command to list any stale clusters.

Change 2864959 on 2016/02/12 by Steve.Robb@Dev-Core

	cvar for enabling/disabling MallocBinned2's per-thread free caches.

Change 2865192 on 2016/02/12 by Steve.Robb@Dev-Core

	Bundle sizes and recycle bundle counts are now configurable via cvars.

Change 2867187 on 2016/02/15 by Steve.Robb@Dev-Core

	Fix for double-buffered free batch recycling.

Change 2868533 on 2016/02/16 by Steve.Robb@Dev-Core

	FBundle class for better bundle management and clarity.

Change 2870302 on 2016/02/17 by Steve.Robb@Dev-Core

	Visualizer fixes for VS2015 and VS2013 Update 5.
	Quotes removed from invalid value nodes on PS4.

Change 2870778 on 2016/02/17 by Steve.Robb@Dev-Core

	FMalloc::FlushCurrentThreadCache for returning thread-local cached memory back to the global allocator.

Change 2873917 on 2016/02/19 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	Fixing UHT not respecting #if WITH_EDITORONLY_DATA properties inside of #if !CPP block.
	Removed temp hack from MaterialExpression.IO related to the bugfix.

Change 2871812 on 2016/02/18 by Graeme.Thornton@GThornton_DevCore

	Fix crash in UnrealPak when signing is enabled

#lockdown Nick.Penwarden

[CL 2875730 by Robert Manuszewski in Main branch]
2016-02-22 11:17:03 -05:00
Mike Beach
73c6bbc883 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2842642 on 2016/01/25 by Maciej.Mroz

	Blueprint C++ Conversion: fixed dependency (headers) list builder

Change 2842648 on 2016/01/25 by Maciej.Mroz

	AssetPtr has implicit constructor from StringReference

Change 2842652 on 2016/01/25 by Maciej.Mroz

	Minor improvements in Orion headers. Necessary to compile the project with converted Blueprints

Change 2842653 on 2016/01/25 by Maciej.Mroz

	Blueprint C++ Conversion:
	Split UberGraph into subfunctions

Change 2843917 on 2016/01/26 by Michael.Schoell

	Replacing variable nodes with other variable nodes will now correctly mark the Blueprint as structurally modified.

	#jira UE-24925 - Using "Replace variable with..." does not mark a blueprint as needing compilation

Change 2844300 on 2016/01/26 by Maciej.Mroz

	Blueprint C++ Conversion: improvements in constructor
	- UProperties for inaccessigle variables are reused
	- Arrays of structs use "StaticStruct()->InitializeStruct.." and diff-serialization.

Change 2845536 on 2016/01/27 by Ben.Cosh

	Refactor of the Blueprint Profiler core to enable execution wire heatmaps.

	Still to do:

	- Sequence node handling - spotted as a bug last minute
	- Some functions still require a refactor, I'll pick this is up in next changes
	- Alternative statistic display widgets
	- enable blueprint breakpoints when profiling?! not sure we want this but adding for visibility

Change 2845619 on 2016/01/27 by Michael.Schoell

	BP-Version bump to resolve TODO in K2Node_Event.

Change 2845824 on 2016/01/27 by Michael.Schoell

	BP-Version bump to resolve TODO in K2Node_FunctionEntry.

Change 2847390 on 2016/01/28 by Maciej.Mroz

	AssetPtr constructor from StringReference in explicit

Change 2847894 on 2016/01/28 by Maciej.Mroz

	Blueprint C++ Conversion:
	Fixed pathologically included headers.

Change 2848662 on 2016/01/29 by Ben.Cosh

	Fix for problems closing the blueprint editor introduced with CL 2845536

	#UE-26153 - Unable to open the same blueprint after closing blueprint editor.
	#UE-26090 - Crash when closing the editor with the blueprint editor open

Change 2848922 on 2016/01/29 by Maciej.Mroz

	Blueprint C++ Conversion:
	Removed unnecessary switch and StateStack in ubergraph subfunctions

Change 2848934 on 2016/01/29 by Maciej.Mroz

	 FEnumEditorUtils::EnsureAllDisplayNamesExist modifies UUserDefinedEnum::DisplayNames only when it's necessary
	It should fix the "Saving FText XXX which has been initialized from FString at cook time " warning

Change 2849251 on 2016/01/29 by Michael.Schoell

	Fixed issues with the "Set Members..." node for structs not providing modified literals and other by-value data in the output connection.

	Reworked the compiler to handle terms with bPassedByReference in new ways. Variables will always mark their terms as bPassedByReference and the "Set Members..." node will leverage the value to know whether it needs to create a local output variable on the node or forward the reference.

	Break nodes will adapt their output terms to reflect the state of the input term, effectively forwarding the bPassedByReference state.

	#jira UE-24451 - "Set Members..." node does not return by-ref as expected when the input pin is connected to a literal (or otherwise truly by-value) pin.

Change 2849263 on 2016/01/29 by Michael.Schoell

	Submit for missing file from CL# 2849251

Change 2849269 on 2016/01/29 by Michael.Schoell

	Improvements to localization support in SBlueprintPalette (items in the MyBlueprint window as well as the BP context menu when selecting nodes).

Change 2849925 on 2016/01/29 by Mike.Beach

	Hanlding deferred loading placeholder-classes in UObjectPropertyBase::CheckValidObject (considering placeholder objects valid, when loading with deferring is enabled).

Change 2850484 on 2016/01/31 by Maciej.Mroz

	Fixed crash when converting Widget Blueprint

Change 2850485 on 2016/01/31 by Maciej.Mroz

	Blueprint C++ Conversion:
	KCST_UnconditionalGoto requires switch, when it's generated by UK2Node_ExecutionSequence

Change 2850859 on 2016/02/01 by Ben.Cosh

	Fix for issue with debug instance filter causing an out of bounds access on the debug function stack array.
	#UE-25552 - Debugging specific instances of Fortnite's player pawn generic bp causes crashes
	#Proj UnrealEd

Change 2850997 on 2016/02/01 by Maciej.Mroz

	Blueprint C++ Conversion:
	Fixed a lot of errors caused by cl#2842642

Change 2851965 on 2016/02/01 by Mike.Beach

	Preventing pin watches from saving/retaining old split pins that have since been deleted (recombine).

	#jira  UE-26299

[CL 2865780 by Mike Beach in Main branch]
2016-02-12 17:00:45 -05:00
Robert Manuszewski
18e2561ceb Copying //UE4/Dev-Core to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2836261 on 2016/01/20 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	Flush FAsyncPackage cache after pre-load to reduce peak memory usage when async loading (5.5-10x).

Change 2828630 on 2016/01/14 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	Adding debug code to catch memory stomps in the async loading buffers that's independent from mallocstomp allocator. Changed the signature of PageProtect functions to be able to read-only protect memory.

Change 2816129 on 2016/01/05 by Steve.Robb@Dev-Core

	Fixes for Realloc and alignment logic which caused redundant reallocations and incorrect binning.

Change 2821054 on 2016/01/08 by Steve.Robb@Dev-Core

	Further Realloc savings when realigning within a block.

Change 2806820 on 2015/12/17 by Steve.Robb@Dev-Core

	New AlignDown function, like Align, but which rounds a value/pointer down to the next alignment instead of up.

Change 2806816 on 2015/12/17 by Steve.Robb@Dev-Core

	Sort UHT modules by type to improve iteration times in conjunction with makefiles.

Change 2823235 on 2016/01/11 by Steve.Robb@Dev-Core

	UHT error messages about missing GENERATED_BODY() macros updated to represent intended use.

Change 2806815 on 2015/12/17 by Steve.Robb@Dev-Core

	Module types split into Game and Engine runtime versions.

Change 2833809 on 2016/01/19 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	StaticLoadObject will now respect LOAD_NoRedirects flag.

Change 2811194 on 2015/12/22 by Bob.Tellez@Z2434_DevCore

	#UE4 Prevent loading packages that have a newer LegacyFileVersion since serialization for FCustomVersion is not forward compatible. UE-24443

Change 2806818 on 2015/12/17 by Steve.Robb@Dev-Core

	Removal of stats from MallocBinned2, to be readded later.

Change 2807069 on 2015/12/17 by Steve.Robb@Dev-Core

	Clarification of some bucket hashing terminology.

Change 2815117 on 2016/01/04 by Steve.Robb@Dev-Core

	Fix for a missing root build path on game modules.

Change 2815673 on 2016/01/05 by Steve.Robb@Dev-Core

	Move FMalloc verification into a proxy object.

Change 2822873 on 2016/01/11 by Steve.Robb@Dev-Core

	Fixes to off-by-one errors and removal of BinnedSizeLimit (assumed to be the same as MAX_POOLED_ALLOCATION_SIZE after OBO fix).

Change 2822923 on 2016/01/11 by Steve.Robb@Dev-Core

	Simplification of MemSizeToPoolTable indexing.

Change 2824974 on 2016/01/12 by Steve.Robb@Dev-Core

	Assert fixed.
	AllocateBlockFromPool's return value made debuggable.

Change 2825241 on 2016/01/12 by Steve.Robb@Dev-Core

	UHT now returns an error code on a warning when -warningsaserrors is specified.

Change 2825291 on 2016/01/12 by Steve.Robb@Dev-Core

	WarningsAsErrors enabled on UHT, after disabling the hardcoded behavior in CL# 2825241.

Change 2829846 on 2016/01/15 by Steve.Robb@Dev-Core

	GitHub #1938 - wrong Max value of enum is used during net serialization

Change 2829914 on 2016/01/15 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	Reduce the amount of memory allocated for async cache buffers when guarding against memory stomps.

Change 2829988 on 2016/01/15 by Steve.Robb@Dev-Core

	Generalized large pool allocations.
	More redundancy removed.

Change 2831935 on 2016/01/18 by Chris.Wood@Chris.Wood.StreamB

	Added UserActivity property to crash description in CRP and CR website.
	[OR-12043] - Phone Home where crashes occur - pass context info to Crash Reporter

	DB column added to db-09 by ColinR matching this change.
	Published to server on Jan 18th 2016

Change 2834003 on 2016/01/19 by Chris.Wood@Chris.Wood.StreamB

	Added Linux to normal callstack parsing code on CR website
	[UE-25527] - Linux CrashReporter is missing information

	Published to server on Jan 19th 2016

Change 2835466 on 2016/01/20 by Joe.Conley@Joe.Conley_EGJWD5708_Dev-Core-Minimal

	Fix issue for cancelling package loads when there are still packages queued.  Call their PackageLoadedDelegate with a "Cancelled" result.

	Should solve remaining issue with UE-24062 - "Calling CancelAsyncLoading triggers an assert in FAsyncPackage::DetachLinker()"
	- (ULevelStreaming::AsyncLevelLoadComplete was not being called if packages were still queued when cancel was issued)

Change 2836803 on 2016/01/20 by Chris.Wood@Chris.Wood.StreamB

	CrashReportWebsite - fix exception thrown when parsing certain callstack formats

Change 2837952 on 2016/01/21 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	Changing FAsyncIORequest to be stored as reference when cancelling IO requests to improve performance.

Change 2838289 on 2016/01/21 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

[CL 2845588 by Robert Manuszewski in Main branch]
2016-01-27 12:09:53 -05:00
Mike Beach
44cb18a444 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2806214 on 2015/12/16 by Michael.Schoell

	Connection draw policy refactored into a factory system.

	PR#1663
	#jira UE-22123 - GitHub 1663 : Implement PinConnectionPolicy factory system

Change 2806845 on 2015/12/17 by Maciej.Mroz

	Blueprint C++ Conversion: fixed varioaus problem.
	Some limitations of included header list were reverted :(
	Any compilation-time optimization are premature (as far as Orion cannot be compiled).

	#codereview Dan.Oconnor

Change 2806892 on 2015/12/17 by Maciej.Mroz

	Blueprint C++ Conversion: fixed compilation error "fatal error C1001: An internal error has occurred in the compiler."

Change 2807020 on 2015/12/17 by Michael.Schoell

	Recursively expand all tree items in graph context menus or My Blueprint window by holding shift when clicking on an arrow.

Change 2807639 on 2015/12/17 by Maciej.Mroz

	BP C++ conversion: Fix for const-correctness. Included generated headers in structs.

Change 2807880 on 2015/12/17 by Mike.Beach

	PR #1865 : Render Kismet graph pin color box with alpha
	https://github.com/EpicGames/UnrealEngine/pull/1865

	#github 1865
	#1865

	#jira UE-23863

Change 2808538 on 2015/12/18 by Maciej.Mroz

	Workaround for UE-24467. Some corrupted files can be opened and fixed.

	#codereivew Dan.Oconnor, Michael.Schoell

Change 2808540 on 2015/12/18 by Maciej.Mroz

	BP C++ conversion: fixed const-correctness related issues

Change 2809333 on 2015/12/18 by Phillip.Kavan

	[UE-23452] SCS/UCS component instancing optimizations

	change summary:
	- added FArchive::FCustomPropertyListNode
	- modified various parts of serialization code to accomodate custom property lists
	- added cooked component instancing data + supporting APIs to UBlueprintGeneratedClass

Change 2810216 on 2015/12/21 by Maciej.Mroz

	Blueprint C++ Conversion:
	- Fixed Compiler Error C2026 (too big string)
	- Fixed a lot of errors related to const correctness. "NativeConst" and "NativeConstTemplateArg" MetaData added.
	- Fixed bunch of problems with TEnumAsByte
	- Fixed for error C2059: syntax error : 'bad suffix on number' - when struct name starts with a digit
	- Fixed int -> bool  conversion

	#codereview Mike.Beach, Dan.Oconnor, Steve.Robb

Change 2810397 on 2015/12/21 by Maciej.Mroz

	Blueprint C++ Conversion: Fixed Compiler Error C1091 (too big string)

Change 2810638 on 2015/12/21 by Dan.Oconnor

	Timers for measuring VM overhead, stats for tracking individual script functions improved (now nicludes ProcessEvent). Stats system is expected to avoid double counting for object and function stats.

Change 2811038 on 2015/12/22 by Phillip.Kavan

	[UE-23452] Fix uninitialized variables in cooked component data.

	- should eliminate crashes introduced by last change

Change 2811054 on 2015/12/22 by Phillip.Kavan

	[UE-23452] Additional fix for uninitialized USTRUCT property.

Change 2811254 on 2015/12/22 by Dan.Oconnor

	More script function detail in stats

Change 2811325 on 2015/12/22 by Maciej.Mroz

	Blueprint C++ Conversion: improved: ExcludedBlueprintTypes list

	#codereview Dan.Oconnor

Change 2812316 on 2015/12/24 by Michael.Schoell

	Added more ByValue/ByRef test cases and added a way to dump all tests that are no longer succeeding.

	Tests Include:
	Verification that functions take and can modify by-ref values.
	ForEach loop verification. Tests for verifying that current functionality will continue to work after COPY injection and that "expected" functionality will work (and currently doesn't).
	More MegaArray tests.

Change 2812318 on 2015/12/24 by Michael.Schoell

	Usability fix: Duplicating graphs in the MyBP window will now open and focus the new graph.

Change 2813179 on 2015/12/29 by Michael.Schoell

	When promoting pins to variables, will no longer carry bIsReference, bIsConst, or bIsWeakPointer value to the new variable's type.

Change 2813435 on 2015/12/30 by Michael.Schoell

	Submitting by-value/by-ref testing BP with more tests:

	More "Set Members..." tests to catch edge cases.
	More Array tests.

Change 2813441 on 2015/12/30 by Michael.Schoell

[CL 2842166 by Mike Beach in Main branch]
2016-01-25 13:25:51 -05:00
unrealbot
c597ad4ba9 Branch snapshot for CL 2842139
[CL 2842139 in Main branch]
2016-01-25 16:51:06 -05:00
Mike Beach
ea171c613e Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2806214 on 2015/12/16 by Michael.Schoell

	Connection draw policy refactored into a factory system.

	PR#1663
	#jira UE-22123 - GitHub 1663 : Implement PinConnectionPolicy factory system

Change 2806845 on 2015/12/17 by Maciej.Mroz

	Blueprint C++ Conversion: fixed varioaus problem.
	Some limitations of included header list were reverted :(
	Any compilation-time optimization are premature (as far as Orion cannot be compiled).

	#codereview Dan.Oconnor

Change 2806892 on 2015/12/17 by Maciej.Mroz

	Blueprint C++ Conversion: fixed compilation error "fatal error C1001: An internal error has occurred in the compiler."

Change 2807020 on 2015/12/17 by Michael.Schoell

	Recursively expand all tree items in graph context menus or My Blueprint window by holding shift when clicking on an arrow.

Change 2807639 on 2015/12/17 by Maciej.Mroz

	BP C++ conversion: Fix for const-correctness. Included generated headers in structs.

Change 2807880 on 2015/12/17 by Mike.Beach

	PR #1865 : Render Kismet graph pin color box with alpha
	https://github.com/EpicGames/UnrealEngine/pull/1865

	#github 1865
	#1865

	#jira UE-23863

Change 2808538 on 2015/12/18 by Maciej.Mroz

	Workaround for UE-24467. Some corrupted files can be opened and fixed.

	#codereivew Dan.Oconnor, Michael.Schoell

Change 2808540 on 2015/12/18 by Maciej.Mroz

	BP C++ conversion: fixed const-correctness related issues

Change 2809333 on 2015/12/18 by Phillip.Kavan

	[UE-23452] SCS/UCS component instancing optimizations

	change summary:
	- added FArchive::FCustomPropertyListNode
	- modified various parts of serialization code to accomodate custom property lists
	- added cooked component instancing data + supporting APIs to UBlueprintGeneratedClass

Change 2810216 on 2015/12/21 by Maciej.Mroz

	Blueprint C++ Conversion:
	- Fixed Compiler Error C2026 (too big string)
	- Fixed a lot of errors related to const correctness. "NativeConst" and "NativeConstTemplateArg" MetaData added.
	- Fixed bunch of problems with TEnumAsByte
	- Fixed for error C2059: syntax error : 'bad suffix on number' - when struct name starts with a digit
	- Fixed int -> bool  conversion

	#codereview Mike.Beach, Dan.Oconnor, Steve.Robb

Change 2810397 on 2015/12/21 by Maciej.Mroz

	Blueprint C++ Conversion: Fixed Compiler Error C1091 (too big string)

Change 2810638 on 2015/12/21 by Dan.Oconnor

	Timers for measuring VM overhead, stats for tracking individual script functions improved (now nicludes ProcessEvent). Stats system is expected to avoid double counting for object and function stats.

Change 2811038 on 2015/12/22 by Phillip.Kavan

	[UE-23452] Fix uninitialized variables in cooked component data.

	- should eliminate crashes introduced by last change

Change 2811054 on 2015/12/22 by Phillip.Kavan

	[UE-23452] Additional fix for uninitialized USTRUCT property.

Change 2811254 on 2015/12/22 by Dan.Oconnor

	More script function detail in stats

Change 2811325 on 2015/12/22 by Maciej.Mroz

	Blueprint C++ Conversion: improved: ExcludedBlueprintTypes list

	#codereview Dan.Oconnor

Change 2812316 on 2015/12/24 by Michael.Schoell

	Added more ByValue/ByRef test cases and added a way to dump all tests that are no longer succeeding.

	Tests Include:
	Verification that functions take and can modify by-ref values.
	ForEach loop verification. Tests for verifying that current functionality will continue to work after COPY injection and that "expected" functionality will work (and currently doesn't).
	More MegaArray tests.

Change 2812318 on 2015/12/24 by Michael.Schoell

	Usability fix: Duplicating graphs in the MyBP window will now open and focus the new graph.

Change 2813179 on 2015/12/29 by Michael.Schoell

	When promoting pins to variables, will no longer carry bIsReference, bIsConst, or bIsWeakPointer value to the new variable's type.

Change 2813435 on 2015/12/30 by Michael.Schoell

	Submitting by-value/by-ref testing BP with more tests:

	More "Set Members..." tests to catch edge cases.
	More Array tests.

Change 2813441 on 2015/12/30 by Michael.Schoell
2016-01-25 13:25:51 -05:00
Bob Tellez
b51555abf7 Copying //UE4/Fortnite-Staging to //UE4/Main
#lockdown nick.penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2806454 on 2015/12/16 by Bob.Tellez

	#UE4 Getting crash reporting working again on linux servers. Since -Unattended is now being passed BEFORE the target folder, the cmd line parsing code was failing so now it parses tokens and switches in a more general way. Also, diagnostics.txt had the incorrect case, since the d is supposed to be capitolized and the crash report processor is case sensitive.

	#rb Ben.Zeigler

	#codereview Dmitry.Rekman

Change 2805502 on 2015/12/16 by Ben.Zeigler

	#UE4 Move ValidateEnumProperties into ValidateGeneratedClass, it was happening too early in the generation process so was being called at an invalid time.
	As a result of this ValidateEnumProperties will not be called correctly for compile on load blueprints, that issue is covered in UE-24569
	#codereview mike.beach, bob.tellez

Change 2805288 on 2015/12/16 by David.Nikdel

	#HTTP #HttpRetry
	- Add new Failed_ConnectionError code to EHttpRequestStatus to distinguish between connection errors and protocol errors.
	- Changed HTTP retry logic a little bit
	  * If a response was received, retry on service-specific explicit HTTP codes (defaults to empty)
	  * If a response was not received and we did not send a full request, automatically retry
	  * If a response was not received and a request may have been sent, retry if the verb is GET or HEAD (should be idempotent)
	- Adjusted Curl/IOS/Mac/PS4/WinInet to try and distinguish Failed_ConnectionError where possible
	  * Other systems will default to Failed which is ok (ConnectionError is an opportunistic categorization)
	  * Opened a PS4 ticket to try to improve detection, but unfortunately there's no way (currently) to distinguish between send timeout, connection timeout, and receive timeout, the latter being the problematic case.
	- Removed the concept of global/default HTTP retry status codes. No system has enough knowledge to set those globally.
	  * Individual requests still specify explicit "retryable" codes and McpServiceBase sets that on each request on a per-service basis
	#RB: Sam.Zamani
	#CodeReview: Sam.Zamani, Josh.Markiewicz, Alex.Fennell, Dmitry.Rekman, Sam.Spiro
	#Fixes: FORT-17804

Change 2803864 on 2015/12/15 by Bob.Tellez

	#UE4 Changed usage of !UE_SERVER to !IsRunningDedicatedServer in cases where we are preventing load attempts on UFonts. This is so running an editor build with -server works the same as running a cooked server.

	#rb Dmitry.Rekman

	#codereview Nick.Darnell

Change 2803677 on 2015/12/15 by Billy.Bramer

	- Expose equality and inequality operators for gameplay attributes

	#rb Todd.Eckert

Change 2802881 on 2015/12/14 by Bob.Tellez

	#UE4 InheritableComponentHandler no longer keeps records for components that we are no longer inheriting.

	#rb Phillip.Kavan, Maciej.Mroz

	#codereview Phillip.Kavan, Maciej.Mroz

Change 2801636 on 2015/12/14 by Bob.Tellez

	#UE4 Returning package insert order for non-imports back to being after those of matching priorities unconditionally since this is what you want even when you are not using the asset registry to preload packages.

	#codereview Graeme.Thornton

Change 2800400 on 2015/12/11 by Jonathan.Lindquist

	Submitting a new Pivot Painter Edition
	- now renders to textures
	- improved workflow
	- greater capabilities

Change 2799579 on 2015/12/11 by John.Abercrombie

	[AUTOMERGE]

	Fixed EQS BP query wrappers getting GCed before wrapped query finishes #UE4

	Fixes FORT-18649 - Patrols don't spawn consistently
	- The patrol blueprint was waiting (endlessly) for an EQS query to finish but because the wrapper could be GC-ed while the EQS query was running the delegate would never fire

	#rb me (this code was written by MieszkoZ)
	(removed code review for integration of Mieszko.Zielinski, Phil.Cole, Dominic.Barile)

	--------
	Integrated using branch UE4-Fortnite-To-UE4-FortniteReleases/0.10 (reversed) of change#2799575 by John.Abercrombie on 2015/12/11 09:55:11.

Change 2799018 on 2015/12/10 by Bob.Tellez

	#UE4 The asset registry tags stripped from cooked builds is now a blacklist by default that includes only the FiB tag. You can opt-in to using the whitelist by flipping the bUseAssetRegistryTagsWhitelistInsteadOfBlacklist flag.

	#rb Fred.Kimberley

	#codereview Peter.Knepley

Change 2798926 on 2015/12/10 by Bob.Tellez

	#UE4 Removed some showflags from the list of "Fixed" showflags since they were actually in use at runtime in Fortnite in a scene capture.

	#jira FORT-18514

	#codereview Martin.Mittring

Change 2797758 on 2015/12/10 by Mark.Satterthwaite

	Defer calls to AUGraphUpdate into FCoreAudioDevice::UpdateHardware - this call will synchronise the calling thread with the CoreAudio thread/run-loop so that the CoreAudio graph is safe to modify and this may incur a significant stall. This means it is far more efficient to amortise the cost of all changes to the graph with a single call. To ensure correctness the audio format conversion components are cached and disposed of after the call to AUGraphUpdate so that any existing operations on the CoreAudio thread are completed prior to disposal.

Change 2781204 on 2015/11/25 by Dmitry.Rekman

	Linux: use jemalloc by default if available.

	- Alleviates one of the reasons for player disconnect (FORT-18048), which was machines running OOM.

	#rb Bob.Tellez
	#codereview Bob.Tellez, Ben.Zeigler

Change 2779398 on 2015/11/24 by Mark.Satterthwaite

	Switch the default graphics API on Mac back to OpenGL, but allow Metal to run with -metal (or -metalsm5 for experimental SM5 support).
2016-01-08 19:10:43 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Mike Beach
ac76fbc5e3 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2781504 on 2015/11/25 by Mike.Beach

	Guarding against invalid nodes for deferred graph node actions (add, remove, select), by using TWeakObjectPtr instead of raw UEdGraphNode pointers.

	#jira UE-23371
	#codereview Dan.OConnor

Change 2781513 on 2015/11/25 by Michael.Schoell

	Find-in-Blueprints optimized gathering.

	Size of data has shrunk in the Asset Registry by up to one fifth the old size!

	Performance moderately improved.

	Load and save times of Blueprints increased, less redundant gathering of searchable data.

	#jira UE-22928 - Optimize Find-in-Blueprints Gathering of Searchable Data

Change 2781517 on 2015/11/25 by Michael.Schoell

	Marked FTimerHandle::Handle as a UPROPERTY(transient) so that Blueprints can check the equality of two instances of the structure.

	#jira UE-23136 - Remove Item Node Removes All Objects in an Array

Change 2781804 on 2015/11/26 by Maciej.Mroz

	Changed ConformImplementedEvents.

	#jira UE-23738 BP_RiftMage_Ultimate fails to convert during cooking

	#codereview Phillip.Kavan, Mike.Beach

Change 2781821 on 2015/11/26 by Ben.Cosh

	This reinstates the blueprint debugging keymaps and adds additional functionality for step over and step out as key maps in the PIE world controls.
	#UEBP-66 - Blueprint debug keymappings
	#UE-16817 - Add step-in, step-over, and run until here functions for breakpoints
	#UE-12481 - The F10 key doesn't work for stepping blueprint debugging
	#Branch UE4
	#Proj GraphEditor, Kismet, UnrealEd, CoreUObject, Slate

	reviewedby chris.wood

Change 2781861 on 2015/11/26 by Maciej.Mroz

	UE-23626 Converted tower defense game - you cannot click to place towers

	CodeGenerator generates overriden exported names for events and functions.

	#codereview Dan.Oconnor, Steve.Robb

Change 2782798 on 2015/11/30 by Maciej.Mroz

	BP C++ conversion: components from SCS calls AttachTo (with ParentSocket parameter).

	#jira UE-23862 Pawns in TowerDefenseGame don't move in converted build

	#codereview Phillip.Kavan, Mike.Beach, Dan.Oconnor

Change 2782881 on 2015/11/30 by Michael.Schoell

	Fixed ensure when promoting function graphs from interfaces during interface removal.

	#jira UE-23717 - Ensure removing an implemented interface when transfering functions

Change 2783041 on 2015/11/30 by Maciej.Mroz

	BP C++ conversion: All variables from Event Graph are listed as class properties.

	#jira UE-23629 Converted tower defense game - Cam scrolls to upper left when mouse leaves window

	#codereview Mike.Beach, Dan.Oconnor

Change 2783080 on 2015/11/30 by Michael.Schoell

	Removing an interface function's output parameters will no longer cause Blueprints implementing the function to error.

	Functions expected as event overrides will accept function graph implementations and give a warning informing that it is unexpected.

	All function graphs (interfaces, interface implementations, overrides) can be duplicated. Parent function calls will be removed.

	Duplicating graphs will correct names of objects in child Blueprints.

	Function overrides of interfaces expected as an event can be deleted.

	Duplicating graphs while in PIE is no longer possible.

	When removing an interface, the operation can now be canceled.

	#jira UE-13335 - Inside a BP Interface, changing a Function output to an input will cause a compile error in the reference bp

Change 2783338 on 2015/11/30 by Michael.Schoell

	New output pins on function result nodes will properly fill out with valid default values.

	All invalid pins will auto-validate themselves on node reconstruction when opening the Blueprint.

	#jira UE-1928 - BLUEPRINTS: Default value not supplied for output parameters of function

Change 2783742 on 2015/11/30 by Phillip.Kavan

	[UE-15463] Add special-case handling for failed imports of BPGC-owned component archetype objects on level load.

	change summary:
	- modified FLinkerLoad::VerifyImport() to customize the load error messaging for missing component archetype objects

Change 2784652 on 2015/12/01 by Ben.Cosh

	Fix for crash whilst undoing the creation of a macro and currently displaying the tooltip in the blueprint editor.
	#UE-23955 - Adding a macro graph through MyBlueprint and then calling undo causes a crash updating the macro tooltip.
	#Branch UE4
	#Proj Kismet

	#CodeReview Chris.Wood

Change 2784834 on 2015/12/01 by Michael.Schoell

	Added functions to convert from string to: Vector, Vector2D, Rotator, Color.

	#jira UE-23761 - GitHub 1795 : [KismetStringLibrary] Convert String Back Into Vector, Rotator, Float, Adding Support for 2 way conversion! ? Rama
	PR #1795
2015-12-16 17:17:43 -05:00
Mike Beach
134cb04d27 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main) @ 2781164
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2716841 on 2015/10/05 by Mike.Beach

	(WIP) Cleaning up how we setup script assets for replacement on cook (aligning more with the Blueprint conversion tool).

	#codereview Maciej.Mroz

Change 2719089 on 2015/10/07 by Maciej.Mroz

	ToValidCPPIdentifierChars handles propertly '?' char.

	#codereview Dan.Oconnor

Change 2719361 on 2015/10/07 by Maciej.Mroz

	Generated native code for AnimBPGC - some preliminary changes.

	Refactor: UAnimBlueprintGeneratedClass is not accessed directly in runtime. It is accessed via UAnimClassInterface interface.
	Properties USkeletalMeshComponent::AnimBlueprintGeneratedClass and UInterpTrackFloatAnimBPParam::AnimBlueprintClass were changed into "TSubclassOf<UAnimInstance> AnimClass"

	The UDynamicClass also can deliver the IAnimClassInterface interface. See UAnimClassData, IAnimClassInterface::GetFromClass and UDynamicClass::AnimClassImplementation.

	#codereview Lina.Halper, Thomas.Sarkanen

Change 2719383 on 2015/10/07 by Maciej.Mroz

	Debug-only code removed

Change 2720528 on 2015/10/07 by Dan.Oconnor

	Fix for determinsitc cooking of async tasks and load asset nodes
	#codereview Mike.Beach, Maciej.Mroz

Change 2721273 on 2015/10/08 by Maciej.Mroz

	Blueprint Compiler Cpp Backend
	- Anim Blueprints can be converted
	- Various fixes/improvements

Change 2721310 on 2015/10/08 by Maciej.Mroz

	refactor (cl#2719361) - no "auto" keyword

Change 2721727 on 2015/10/08 by Mike.Beach

	(WIP) Setup the cook commandlet so it handles converted assets, replacing them with generated classes.

	    - Refactored the conversion manifest (using a map over an array)
	    - Centralized destination paths into a helper struct (for the manifest)
	    - Generating an Editor module that automatically hooks into the cook process when enabled
	    - Loading and applying native replacments for the cook

Change 2723276 on 2015/10/09 by Michael.Schoell

	Blueprints duplicated for PIE will no longer register as dependencies to other Blueprint.

	#jira UE-16695 - Editor freezes then crashes while attempting to save during PIE
	#jira UE-21614 - [CrashReport] Crash while saving during PIE - FKismetEditorUtilities::CompileBlueprint() kismet2.cpp:736

Change 2724345 on 2015/10/11 by Ben.Cosh

	Blueprint profiler at first pass, this includes the ability to instrument specific blueprints with realtime editor stat display.
	#UEBP-21 - Profiling data capture and storage
	#UEBP-13 - Performance capture landing page
	#Branch UE4
	#Proj BlueprintProfiler, BlueprintGraph, EditorStyle, Kismet, UnrealEd, CoreUObject, Engine

Change 2724613 on 2015/10/12 by Ben.Cosh

	Incremental update for blueprint profiler to fix the way some of the reported stats cascade through events and branches and additionally some missed bits of code are refactored/removed.
	#Branch UE4
	#Proj BlueprintProfiler

	#info Whilst looking into this I spotted the reason why the stats seem so erratic, There appears to be an issue with FText's use of EXPERIMENTAL_TEXT_FAST_DECIMAL_FORMAT which I have reported, but ideally disable this locally until a fix is integrated.

Change 2724723 on 2015/10/12 by Maciej.Mroz

	Constructor of a dynamic class creates CDO.

	#codereview Robert.Manuszewski

Change 2725108 on 2015/10/12 by Mike.Beach

	[UE-21891] Minor fix to the array shuffle() function; now processes the last entry like all the others.

Change 2726358 on 2015/10/13 by Maciej.Mroz

	UDataTable is properly saved even if its RowStruct is null.

	https://udn.unrealengine.com/questions/264064/crash-using-hotreload-in-custom-datatable-cdo-clas.html

Change 2727395 on 2015/10/13 by Mike.Beach

	(WIP) Second pass on the Blueprint conversion pipeline; setting it up for more optimal (speedier) performance.
	    * Using stubs for replacements (rather than loading dynamic replacement).
	    * Giving the cook commandlet more control (so a conversion could be ran directly).
	    * Now logging replacements by old object path (to account for UPackage replacement queries).
	    * Fix for [UE-21947], unshelved from CL 2724944 (by Maciej.Mroz).

	#codereview Maciej.Mroz

Change 2727484 on 2015/10/13 by Mike.Beach

	[UE-22008] Fixing up comment/tooltip typo for UActorComponent::bAutoActivate.

Change 2727527 on 2015/10/13 by Mike.Beach

	Downgrading an inactionable EdGraph warning, while adding more info so we could possibly determine what's happening.

Change 2727702 on 2015/10/13 by Dan.Oconnor

	Fix for crash in UDelegateProperty::GetCPPType when called on a function with no OwnerClass (events)

Change 2727968 on 2015/10/14 by Maciej.Mroz

	Since ConstructorHelpers::FClassFinder is usually static, the loaded class should be in root set, to prevent the pointer stored in  ConstructorHelpers::FClassFinder from being obsolete.
	FindOrLoadClass behaves now like FindOrLoadObject.

	#codereview Robert.Manuszewski, Nick.Whiting

Change 2728139 on 2015/10/14 by Phillip.Kavan
2015-11-25 18:47:20 -05:00
Robert Manuszewski
f9cdeb96cd Copying //UE4/Dev-Core to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2717513 on 2015/10/06 by Robert.Manuszewski@Robert_Manuszewski_EGUK_M1

	GC and WeakObjectPtr performance optimizations.

	- Moved some of the EObjectFlags to EInternalObjectFlags and merged them with FUObjectArray
	- Moved WeakObjectPtr serial numbersto FUObjectArray
	- Added pre-allocated UObject array

Change 2716517 on 2015/10/05 by Robert.Manuszewski@Robert_Manuszewski_EGUK_M1

	Make SavePackage thread safe UObject-wise so that StaticFindObject etc can't run in parallel when packages are being saved.

Change 2721142 on 2015/10/08 by Mikolaj.Sieluzycki@Dev-Core_D0920

	UHT will now use makefiles to speed up iterative runs.

Change 2726320 on 2015/10/13 by Jaroslaw.Palczynski@jaroslaw.palczynski_D1732_2963

	Hot-reload performance optimizations:
	1. Got rid of redundant touched BPs optimization (which was necessary before major HR fixes submitted earlier).
	2. Parallelized search for old CDOs referencers.

Change 2759032 on 2015/11/09 by Graeme.Thornton@GThornton_DesktopMaster

	Dependency preloading improvements
	 - Asset registry dependencies now resolve asset redirectors
	 - Rearrange runtime loading to put dependency preloads within BeginLoad/EndLoad for the source package

Change 2754342 on 2015/11/04 by Robert.Manuszewski@Robert_Manuszewski_Stream1

	Allow UnfocusedVolumeMultiplier to be set programmatically

Change 2764008 on 2015/11/12 by Robert.Manuszewski@Robert_Manuszewski_Stream1

	When cooking, don't add imports that are outers of objects excluded from the current cook target.

Change 2755562 on 2015/11/05 by Steve.Robb@Dev-Core

	Inline storage for TFunction.
	Fix for delegate inline storage on Win64.
	Some build fixes.
	Visualizer fixes for new TFunction format.

Change 2735084 on 2015/10/20 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	CrashReporter Web - Search by Platform
	Added initial support for streams (GetBranchesAsListItems, CopyToJira)

Change 2762387 on 2015/11/11 by Steve.Robb@Dev-Core

	Unnecessary allocation removed when loading empty files in FFileHelper::LoadFileToString.

Change 2762632 on 2015/11/11 by Steve.Robb@Dev-Core

	Some TSet function optimisations:

	Avoiding unnecessary hashing of function arguments if the container is empty (rather than the hash being empty, which is not necessarily equivalent).
	Taking local copies of HashSize during iterations.

Change 2762936 on 2015/11/11 by Steve.Robb@Dev-Core

	BulkData zero byte allocations are now handled by an RAII object which owns the memory.

Change 2765758 on 2015/11/13 by Steve.Robb@Dev-Core

	FName::operator== and != optimised to be a single comparison.

Change 2757195 on 2015/11/06 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	PR #1305: Improvements in CrashReporter for Symbol Server usage (Contributed by bozaro)

Change 2760778 on 2015/11/10 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	PR #1725: Fixed typos in ProfilerCommon.h; Added comments (Contributed by BGR360)

	Also fixed starting condition.

Change 2739804 on 2015/10/23 by Robert.Manuszewski@Robert_Manuszewski_Stream1

	PR #1470: [UObjectGlobals] Do not overwrite instanced subobjects with ones from CDO (Contributed by slonopotamus)

Change 2744733 on 2015/10/28 by Steve.Robb@Dev-Core

	PR #1540 - Specifying a different Saved folder at launch through a command line parameter

	Integrated and optimized.

#lockdown Nick.Penwarden

[CL 2772222 by Robert Manuszewski in Main branch]
2015-11-18 16:20:49 -05:00