You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Fix issues related to hot-reload and LiveCoding co-existing.
* Removed code to invalidate makefiles when adding new source files. UBT should be reliable enough to make this determination itself nowadays, and ignored -invalidatemakefilesonly argument was causing modules to be recompiled. * Fixed incorrect config section name when determining whether to allow hot reload from IDE. Now prevents hot reload from IDE when live coding is enabled. * Added error message when trying to add a new class with Live Coding enabled. * Added error messages when trying to start Live Coding after a hot reload has taken place. * Added error messages when trying to hot reload with Live Coding enabled. #jira UE-71253 #rb none #ROBOMERGE-OWNER: ryan.gerleve #ROBOMERGE-AUTHOR: ben.marsh #ROBOMERGE-SOURCE: CL 5403464 in //UE4/Release-4.22/... via CL 5403485 #ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking) [CL 5417897 by ben marsh in Dev-Networking branch]
This commit is contained in:
@@ -137,9 +137,9 @@ void FLiveCodingModule::EnableForSession(bool bEnable)
|
||||
UE_LOG(LogLiveCoding, Display, TEXT("Console will be hidden but remain running in the background. Restart to disable completely."));
|
||||
LppSetActive(false);
|
||||
LppSetVisible(false);
|
||||
bEnabledForSession = false;
|
||||
}
|
||||
}
|
||||
bEnabledForSession = bEnable;
|
||||
}
|
||||
|
||||
bool FLiveCodingModule::IsEnabledForSession() const
|
||||
@@ -147,6 +147,18 @@ bool FLiveCodingModule::IsEnabledForSession() const
|
||||
return bEnabledForSession;
|
||||
}
|
||||
|
||||
bool FLiveCodingModule::CanEnableForSession() const
|
||||
{
|
||||
#if !IS_MONOLITHIC
|
||||
FModuleManager& ModuleManager = FModuleManager::Get();
|
||||
if(ModuleManager.HasAnyOverridenModuleFilename())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
bool FLiveCodingModule::HasStarted() const
|
||||
{
|
||||
return bStarted;
|
||||
@@ -193,6 +205,13 @@ bool FLiveCodingModule::StartLiveCoding()
|
||||
{
|
||||
if(!bStarted)
|
||||
{
|
||||
// Make sure there aren't any hot reload modules already active
|
||||
if (!CanEnableForSession())
|
||||
{
|
||||
UE_LOG(LogLiveCoding, Error, TEXT("Unable to start live coding session. Some modules have already been hot reloaded."));
|
||||
return false;
|
||||
}
|
||||
|
||||
// Setup the console path
|
||||
GLiveCodingConsolePath = ConsolePathVariable->GetString();
|
||||
if (!FPaths::FileExists(GLiveCodingConsolePath))
|
||||
|
||||
Reference in New Issue
Block a user