From e97d614b8bfcd94f168c70a9886e74684ef256e9 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Tue, 20 Jul 2021 13:56:02 -0600 Subject: [PATCH] narrow down C# test error --- kiss/src/kiss/EmbeddedScript.hx | 4 +++- kiss/src/kiss/cloner/Cloner.hx | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/kiss/src/kiss/EmbeddedScript.hx b/kiss/src/kiss/EmbeddedScript.hx index 7204b78f..8be5bc43 100644 --- a/kiss/src/kiss/EmbeddedScript.hx +++ b/kiss/src/kiss/EmbeddedScript.hx @@ -211,7 +211,9 @@ class EmbeddedScript { // fields, otherwise DSL state will be lost when forking, which is unacceptable var fork = new kiss.cloner.Cloner().clone(this); fork.instructions[instructionPointer] = command; - // trace(fork.breakPoints); + if (fork.breakPoints == null) { + throw 'cloning failed'; + } // trace('running a fork from ' + Std.string(instructionPointer + 1)); fork.run(); // trace("fork finished"); diff --git a/kiss/src/kiss/cloner/Cloner.hx b/kiss/src/kiss/cloner/Cloner.hx index 005e316a..34734771 100644 --- a/kiss/src/kiss/cloner/Cloner.hx +++ b/kiss/src/kiss/cloner/Cloner.hx @@ -39,7 +39,7 @@ class Cloner { return v; #end - #if neko + #if (neko || cs) try { if (Type.getClassName(cast v) != null) return v; @@ -68,7 +68,7 @@ class Cloner { case TEnum(e): return v; case TUnknown: - return null; + throw 'Cannot clone object of unknown type $v'; } }