Fix exception handling on failure to get operator.

This commit is contained in:
2022-11-06 12:11:55 +08:00
parent 15e8a2a2a8
commit 01a4214265

View File

@@ -157,7 +157,11 @@ namespace Cryville.Common.Pdt {
internal void Operate(PdtOperatorSignature sig) {
PdtOperator op;
try { op = GetOperator(sig); }
catch (Exception) { _framecount -= sig.ParamCount; return; }
catch (Exception) {
for (int i = 0; i < sig.ParamCount; i++)
DiscardStack();
throw;
}
Operate(op, sig.ParamCount);
}
/// <summary>