Fixed #1565 (quit() raises an error in KLayout Python Console)

This commit is contained in:
Matthias Koefferlein 2023-12-11 23:55:57 +01:00
parent 16766a21f9
commit 9525cfd1cd
2 changed files with 11 additions and 1 deletions

View File

@ -119,7 +119,9 @@ void check_error ()
int status = 0;
if (exc_value) {
tl::Variant st = python2c<tl::Variant> (exc_value.get ());
status = st.to_int ();
if (st.can_convert_to_int ()) {
status = st.to_int ();
}
}
throw tl::ExitException (status);

View File

@ -201,6 +201,14 @@ class KLayoutMain_TestClass < TestBase
out = `#{self.klayout_bin} -z -r #{File.join(File.dirname(__FILE__), "test12.rb")} 2>&1`
assert_equal(out, "Before exit()\n")
# sys.exit(0) - Python
out = `#{self.klayout_bin} -z -r #{File.join(File.dirname(__FILE__), "test12s.py")} 2>&1`
assert_equal(out, "Before exit()\n")
# quit() - Python (issue #1565)
out = `#{self.klayout_bin} -z -r #{File.join(File.dirname(__FILE__), "test12q.py")} 2>&1`
assert_equal(out, "Before quit()\n")
end
end