fix: exit lifecycle probe without document command queue
This commit is contained in:
@@ -330,6 +330,16 @@ internal sealed class FirstLimitedApplyAutomationCoordinator
|
||||
{
|
||||
if (exitHandlerSubscribed) AcadApplication.Idle -= OnExitIdle;
|
||||
exitHandlerSubscribed = false;
|
||||
// LifecycleProbe deliberately opens no drawing. It is already
|
||||
// executing in the first verified Idle callback, where the managed
|
||||
// quit API has been runtime-confirmed to terminate AutoCAD cleanly.
|
||||
if (document is null && string.Equals(config?.Phase, "LifecycleProbe", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
transitions.Add("LifecycleProbeApplicationQuitRequested");
|
||||
TryWriteEvidence(state == CoordinatorState.Completed, null);
|
||||
AcadApplication.Quit();
|
||||
return;
|
||||
}
|
||||
if (document is null) throw new InvalidOperationException("AUTOMATION_EXIT_DOCUMENT_UNAVAILABLE");
|
||||
transitions.Add("NativeQuitCommandQueued");
|
||||
// Persist the exit boundary before handing control back to AutoCAD;
|
||||
|
||||
Reference in New Issue
Block a user