migueldeicaza / SwiftGodot

New Godot bindings for Swift
https://migueldeicaza.github.io/SwiftGodotDocs/tutorials/swiftgodot-tutorials/
MIT License
1.06k stars 64 forks source link

`swift test` crashes with `--verbose` passed to `godot_main` #397

Closed kevinw closed 5 months ago

kevinw commented 6 months ago

In GodotRuntime.swift if you add --verbose to the command line args given to godot_main, and then run swift test, the test suite crashes; possibly trying to print out "Leaked instance"s:

Test Case '-[SwiftGodotTests.Vector4iTests testOperatorUnaryMinus]' passed (0.000 seconds).
Test Suite 'Vector4iTests' failed at (null).
     Executed 0 tests, with 0 failures (0 unexpected) in 0.000 (0.000) seconds
Test Suite 'WrappedTests' started at (null).
Test Case '-[SwiftGodotTests.WrappedTests testRetain]' started.
Test Case '-[SwiftGodotTests.WrappedTests testRetain]' passed (0.023 seconds).
Test Suite 'WrappedTests' failed at (null).
     Executed 0 tests, with 0 failures (0 unexpected) in 0.000 (0.000) seconds
XR: Clearing primary interface
XR: Removed interface "Native mobile"
XR: Removed interface "OpenXR"
ERROR: 1 RID allocations of type 'N18RendererCanvasCull4ItemE' were leaked at exit.
WARNING: ObjectDB instances leaked at exit (run with --verbose for details).
     at: cleanup (core/object/object.cpp:2208)
Leaked instance: RandomNumberGenerator:-9222625468459514692
Leaked instance: GridMap:747118151075005 - Node name: 
Leaked instance: GridMap:747667906888894 - Node name:
================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.rc.custom_build (3a197cb8c0f12608959b7e091acb7e06e60ca2b9)
Dumping the backtrace.
[1] 1   libsystem_platform.dylib            0x0000000185a51a24 _sigtramp + 56
[2] String::copy_from(char const*)
[3] String::String(char const*)
[4] Node::is_class(String const&) const
[5] ObjectDB::cleanup()
[6] unregister_core_types()
[7] Main::cleanup(bool)
[8] 8   libgodot.dylib                      0x0000000106811590 main + 312
[9] 9   SwiftGodotPackageTests              0x000000010d689964 $s21SwiftGodotTestability0B7RuntimeC03runB033_C89EAFC35334C1A1ABDB055877633C76LL9loadSceneyy0aB00M4TreeCc_tFZySpySpys4Int8VGSgGSgXEfU1_ + 148
[10] 10  SwiftGodotPackageTests              0x000000010d689e38 $s21SwiftGodotTestability0B7RuntimeC13withUnsafePtr33_C89EAFC35334C1A1ABDB055877633C76LL7strings8callbackySaySSG_ySpySpys4Int8VGSgGSgXEtFZ + 1212
[11] 11  SwiftGodotPackageTests              0x000000010d6889e0 $s21SwiftGodotTestability0B7RuntimeC03runB033_C89EAFC35334C1A1ABDB055877633C76LL9loadSceneyy0aB00M4TreeCc_tFZ + 380
[12] 12  SwiftGodotPackageTests              0x000000010d688740 $s21SwiftGodotTestability0B7RuntimeC3run10completionyyyc_tFZ + 316
[13] 13  SwiftGodotPackageTests              0x000000010d68a870 $s21SwiftGodotTestability0B8TestCaseC3runyyF + 316
[14] 14  SwiftGodotPackageTests              0x000000010d68ab98 $s21SwiftGodotTestability0B8TestCaseC3runyyFTo + 36
[15] 15  XCTestCore                          0x00000001052d0a70 -[XCTestSuite runTestBasedOnRepetitionPolicy:testRun:] + 68
[16] 16  XCTestCore                          0x00000001052d0938 __27-[XCTestSuite performTest:]_block_invoke + 164
[17] 17  XCTestCore                          0x00000001052d039c __59-[XCTestSuite _performProtectedSectionForTest:testSection:]_block_invoke + 48
[18] 18  XCTestCore                          0x00000001052cd7d8 +[XCTContext _runInChildOfContext:forTestCase:markAsReportingBase:block:] + 180
[19] 19  XCTestCore                          0x00000001052cd6c0 +[XCTContext runInContextForTestCase:markAsReportingBase:block:] + 104
[20] 20  XCTestCore                          0x00000001052d030c -[XCTestSuite _performProtectedSectionForTest:testSection:] + 180
[21] 21  XCTestCore                          0x00000001052d05ec -[XCTestSuite performTest:] + 220