diff --git a/IDE/src/ui/GenerateDialog.bf b/IDE/src/ui/GenerateDialog.bf index 26a4f82f..b87b99d2 100644 --- a/IDE/src/ui/GenerateDialog.bf +++ b/IDE/src/ui/GenerateDialog.bf @@ -747,7 +747,16 @@ namespace IDE.ui { isWorking = true; var bfCompiler = gApp.mBfResolveCompiler; - if (!bfCompiler.IsPerformingBackgroundOperation()) + if (bfCompiler == null) + { + if (mOutputPanel == null) + { + ShowError("Cannot generate files in safe mode"); + RehupMinSize(); + } + mPendingGenList = false; + } + else if (!bfCompiler.IsPerformingBackgroundOperation()) { bfCompiler.CheckThreadDone(); @@ -768,7 +777,7 @@ namespace IDE.ui } } - gApp.mBfResolveCompiler.CheckThreadDone(); + gApp.mBfResolveCompiler?.CheckThreadDone(); if ((mThreadState == .Executing) || (isWorking)) { diff --git a/IDE/src/ui/ProjectPanel.bf b/IDE/src/ui/ProjectPanel.bf index e1288b7f..152af6bf 100644 --- a/IDE/src/ui/ProjectPanel.bf +++ b/IDE/src/ui/ProjectPanel.bf @@ -1414,7 +1414,7 @@ namespace IDE.ui { bfCompiler.QueueProjectSourceRemoved(projectSource); } - gApp.mBfResolveCompiler.QueueDeferredResolveAll(); + gApp.mBfResolveCompiler?.QueueDeferredResolveAll(); } #if IDE_C_SUPPORT else if (IDEApp.IsClangSourceFile(fullPath))