Commit Graph

714 Commits

Author SHA1 Message Date
Robert Manuszewski
ce61c6c71c Making FAsyncLoadingThread::InsertPackage (more) thread safe
[CL 2538742 by Robert Manuszewski in Main branch]
2015-05-06 03:24:17 -04:00
Maciej Mroz
c3c917d9a9 Cis fix for clang
[CL 2538682 by Maciej Mroz in Main branch]
2015-05-06 00:55:14 -04:00
Maciej Mroz
94197986df GetBaseStructure was replaced with TBaseStructure<>::Get()
Related to: https://udn.unrealengine.com/questions/244398/blueprint-struct-with-vector-member-crashes-editor.html

#codereview Robert.Manuszewski, Jaroslaw.Palczynski, Nick.Whiting

[CL 2538645 by Maciej Mroz in Main branch]
2015-05-05 23:07:23 -04:00
Maciej Mroz
50f52af70c GIsReinstancing flag added to supress warning about executing script form an obsolete class.
https://udn.unrealengine.com/questions/233181/class-newerversionexists-assert-when-compiling-paw.html

#codereview Nick.Whiting

[CL 2538290 by Maciej Mroz in Main branch]
2015-05-05 17:51:24 -04:00
Phillip Kavan
3c10408f03 [UE-13996] Retain references to other Actor instances on copy/paste from one level to another.
change summary:
- modified UObjectPropertyBase::GetExportPath() to also avoid fully-qualified names when PPF_ExportsNotFullyQualified is set and the object is a sibling of the root scope

#codereview Matt.Kuhlenschmidt, Marc.Audy

[CL 2538281 by Phillip Kavan in Main branch]
2015-05-05 17:48:52 -04:00
Mike Beach
47abefa04c Amending a deferred dependency check() so that it accounts for deferred functions that have been regenerated already.
[CL 2536621 by Mike Beach in Main branch]
2015-05-04 18:19:27 -04:00
Mike Beach
8c0dbdac33 [UE-13579] Relinking dependent blueprint subclasses on-load, when their parent class is recompiled (as part of FScopedClassDependencyGather).
#codereview Nick.Whiting

[CL 2536495 by Mike Beach in Main branch]
2015-05-04 17:32:42 -04:00
Daniel Lamb
c085f26429 Made InitializeCoreClasses store information staticly for reuse in following save package calls.
Converted some string comparisions to use FNames instead.

[CL 2536073 by Daniel Lamb in Main branch]
2015-05-04 14:15:02 -04:00
Mike Beach
14be8de8a4 [UE-14848] Comments to explain CL 2534515.
[CL 2534522 by Mike Beach in Main branch]
2015-05-01 18:36:52 -04:00
Mike Beach
b13bb51297 [UE-14848] Deferred sub-object initialization needs to fix up any stale archetype references.
#codreview Robert.Manuszewski, Nick.Whiting, Kathna.Lai

[CL 2534515 by Mike Beach in Main branch]
2015-05-01 18:30:14 -04:00
Marc Audy
b01829bae8 Fix compile error
[CL 2534124 by Marc Audy in Main branch]
2015-05-01 15:37:10 -04:00
Marc Audy
ed0801200e Add LoadSynchronous utility function to FAssetPtr and TAssetPtr
#codereview Bob.Tellez, Robert.Manuszewski

[CL 2534016 by Marc Audy in Main branch]
2015-05-01 15:00:56 -04:00
Terence Burns
ff28fe1af3 Add functionality to uobject and fconfigfile to support editing one property at a time.
Enabled for Config editor as an initial test bed.

UE-14449

[CL 2533480 by Terence Burns in Main branch]
2015-05-01 09:37:58 -04:00
Graeme Thornton
1600061782 Fix for a crash when setting up uclass token streams
[CL 2533445 by Graeme Thornton in Main branch]
2015-05-01 09:00:05 -04:00
Mike Beach
0da60125fb [UE-13579] Deferring sub-object/property initialization for certain CDOs (until after we can garuntee their super CDO has been initialized).
#codereview Robert.Manuszewski, Dan.OConnor, Maciej.Mroz

[CL 2532563 by Mike Beach in Main branch]
2015-04-30 16:59:32 -04:00
Marc Audy
bfb04b6f01 FStringAssetReference::TryLoad will now correctly follow redirectors
#codereview Nick.Darnell

[CL 2532486 by Marc Audy in Main branch]
2015-04-30 16:26:22 -04:00
Mike Fricker
290f5e6d82 Miscellaneous fixes for Clang on windows
These changes allow UE4 to compile and run (in Debug) on Clang 3.7 alpha (r231657 only!)
  - Disabled editor source file discovery (crashes with Clang currently)
  - Disabled FThreadIdleStats in UnrealHeaderTool with Clang on Windows (causes link errors due to inlining bugs with Clang and DLL imports)
  - Use MSVC linker by default, even when compiling with Clang (can be tweaked with bAllowClangLinker)
  - Enabled shadow variable warnings on Windows with Clang
  - Limited max size of reflection code source files (Clang on Windows crashes with huge source files)
  - Fixed UE4 deprecation warnings not showing up when using Clang on Windows
  - Make sure initialization list order only triggers a warning on Clang for Windows

Other changes:
  - Fixed issues with pushed pragmas not getting popped (PRAGMA_ENABLE_DEPRECATION_WARNINGS)
  - Removed EMIT_DEPRECATED_WARNING_MESSAGE, wasn't used
  - Fixed various third party library includes not being treated as system headers (prevents compiler warnings)

To test Clang on Windows (beta!!):

- Get latest UE4 main branch (4.9)

- Install LLVM+Clang for Windows version r231657.  It's a quick install, you don't need to compile anything yourself.

- Open UEBuildWindows.cs, and change bCompileWithClang to true.  Be careful not to check that in.  We'll probably make this config-driven later, after the Clang toolchain gets more mature.

- Switch to Debug Editor configuration.  (See below for more info.)

- Rebuild the game or engine

Notes:

- You must use Clang r231657 (3.7.0 alpha).  There are no other releases that I've found that are able to compile UE4 successfully.  Most of the newer releases crash during compiling, and older releases aren't able to digest Windows header files well enough.

- Compiling in Development currently will not work due to bugs with Clangs handling of inlining and DLL exports.  Monolithic builds should work, though.

- Occasionally you may see runtime crashes (stack overflows or access violations) when running UE4 compiled with Clang on Windows.  These may very well be bugs in Clang (remember, we're using an alpha release of Clang 3.7.0.)  Unfortunately without better debugger support, it can be difficult to workaround these

- When debugging, you will only have functions and line numbers, no variables or parameters.  Clang only has preliminary support for Microsoft's PDB format currently.
XGE is fully supported with Clang on Windows.  Best case rebuild times I've seen are 3.5 minutes in Debug.

- Shared PCHs aren't supported yet (similar to on Mac and Linux), so iterative compile times may be slower compared to Visual C++.  However the Clang compiler is actually quite fast for rebuilds, probably because of missing debug info though.

- There may be some compiler warnings that are different between Mac/Linux and Windows.  We haven't done a line-by-line comparison yet.

- Build products and executables for Clang and VC++ overlap on disk.  So you have to rebuild to switch back and forth.  Sorry.

- Clang on Windows has a few bugs that we've had to work around.  You might see some strange things from time to time.  Every new release of Clang has different behavior on Windows.

- We still use the VC++ Linker, even when compiling using Clang.  The new Clang linker (lld.exe) can be enabled with bAllowClangLinker but it will crash when linking some modules.  It also doesn't produce usable debug symbols by Visual Studio (yet).

#codereview mikolaj.sieluzycki

[CL 2532260 by Mike Fricker in Main branch]
2015-04-30 14:24:21 -04:00
Jaroslaw Surowiec
ec93b9ef03 Core - Removed debug code
[CL 2531755 by Jaroslaw Surowiec in Main branch]
2015-04-30 08:18:01 -04:00
Maciej Mroz
9e7104421b UE-11912 Access None errors creating log spam in user's project when editing BP
In Editor.ini [ScriptErrorLog] section and MaxNumOfAccessViolation variable were added.

#codereview Mike.Beach

[CL 2531156 by Maciej Mroz in Main branch]
2015-04-29 20:41:03 -04:00
David Ratti
55db423c17 Merging CL 2522630
Added UObject::PreDestroyFromReplication()

[CL 2530204 by David Ratti in Main branch]
2015-04-29 10:19:02 -04:00
Daniel Lamb
5d57367351 Fix for bulk data being cleared while cooking.
#codereview Robert.Manuszewski

[CL 2530180 by Daniel Lamb in Main branch]
2015-04-29 10:02:16 -04:00
Steve Robb
e6efec2124 Check moved to the start of the BeginDestroy, before the name is reset.
#codereview robert.manuszewski

[CL 2530139 by Steve Robb in Main branch]
2015-04-29 09:34:18 -04:00
Maciej Mroz
c3690f90e4 UE-14122 Passing FText objects accessed from Access None objects into functions crashes the game
After a contex fail the result is properly cleared.

#codereview Nick.Whiting

[CL 2528864 by Maciej Mroz in Main branch]
2015-04-28 14:48:37 -04:00
Marc Audy
eecbb5719a Only report skipped saved property in the load from disk (persistent) and when working with cooked content
#codereview Robert.Manuszewski

[CL 2528811 by Marc Audy in Main branch]
2015-04-28 14:15:48 -04:00
Robert Manuszewski
0c7bc6f9da Fixing BulkData serialization when cooking compressed packages
#codereview Ori.Cohen

[CL 2528304 by Robert Manuszewski in Main branch]
2015-04-28 06:48:18 -04:00