Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resource loading crashes editor 3.2.4 beta 4 #44447

Closed
DarkMessiah opened this issue Dec 17, 2020 · 1 comment · Fixed by #44452
Closed

Resource loading crashes editor 3.2.4 beta 4 #44447

DarkMessiah opened this issue Dec 17, 2020 · 1 comment · Fixed by #44452

Comments

@DarkMessiah
Copy link
Contributor

DarkMessiah commented Dec 17, 2020

Godot version:

3.2.4 beta 2/3/4

OS/device including version:

Windows 10 x64

Issue description:

Godot crashed or print error when try load Resource with Reference data inside.

Works fine in 3.2.3 and 3.2.4 beta 1

Steps to reproduce:

  1. Create Reference class with string variable
  2. Create Resource class to store created Reference
  3. Create Resource with data and try load it

Minimal reproduction project:

resource_issue.zip

Maybe regression after #41931

@akien-mga
Copy link
Member

Confirmed on 873d193ff.

pure virtual method called
terminate called without an active exception

Thread 1 "godot-3.2" received signal SIGABRT, Aborted.
0x00007ffff7768510 in raise () from /lib64/libc.so.6

(gdb) bt
#0  0x00007ffff7768510 in raise () from /lib64/libc.so.6
#1  0x00007ffff7753526 in abort () from /lib64/libc.so.6
#2  0x00007ffff7ade81c in __gnu_cxx::__verbose_terminate_handler() [clone .cold] () from /lib64/libstdc++.so.6
#3  0x00007ffff7ae99a6 in __cxxabiv1::__terminate(void (*)()) () from /lib64/libstdc++.so.6
#4  0x00007ffff7ae9a11 in std::terminate() () from /lib64/libstdc++.so.6
#5  0x00007ffff7aea6cf in __cxa_pure_virtual () from /lib64/libstdc++.so.6
#6  0x000000000381ba6d in Object::set (this=0x6a30890, p_name=..., p_value=..., r_valid=0x0) at core/object.cpp:414
#7  0x0000000003917c09 in VariantParser::parse_value (token=..., value=..., p_stream=0x6a79310, line=@0x6a79388: 8, r_err_str=..., p_res_parser=0x6a793a8) at core/variant_parser.cpp:788
#8  0x000000000391ad4d in VariantParser::_parse_dictionary (object=..., p_stream=0x6a79310, line=@0x6a79388: 8, r_err_str=..., p_res_parser=0x6a793a8) at core/variant_parser.cpp:1327
#9  0x0000000003915bc0 in VariantParser::parse_value (token=..., value=..., p_stream=0x6a79310, line=@0x6a79388: 8, r_err_str=..., p_res_parser=0x6a793a8) at core/variant_parser.cpp:491
#10 0x000000000391b7de in VariantParser::parse_tag_assign_eof (p_stream=0x6a79310, line=@0x6a79388: 8, r_err_str=..., r_tag=..., r_assign=..., r_value=..., p_res_parser=0x6a793a8, p_simple_tag=false)
    at core/variant_parser.cpp:1506
#11 0x000000000323bbea in ResourceInteractiveLoaderText::poll (this=0x6a791d0) at scene/resources/resource_format_text.cpp:588
#12 0x0000000003a28824 in ResourceFormatLoader::load (this=0x6214a00, p_path=..., p_original_path=..., r_error=0x7fffffffb344) at core/io/resource_loader.cpp:197
#13 0x0000000003a2a12f in ResourceLoader::_load (p_path=..., p_original_path=..., p_type_hint=..., p_no_cache=false, r_error=0x7fffffffb344) at core/io/resource_loader.cpp:270
#14 0x0000000003a2ad31 in ResourceLoader::load (p_path=..., p_type_hint=..., p_no_cache=false, r_error=0x7fffffffb344) at core/io/resource_loader.cpp:402
#15 0x0000000003a5686b in _ResourceLoader::load (this=0x54f0550, p_path=..., p_type_hint=..., p_no_cache=false) at core/bind/core_bind.cpp:74
#16 0x0000000003ab71d6 in MethodBind3R<Ref<Resource>, String const&, String const&, bool>::call (this=0x54f0ab0, p_object=0x54f0550, p_args=0x7fffffffb650, p_arg_count=1, r_error=...)
    at ./core/method_bind.gen.inc:2505
#17 0x000000000381e40a in Object::call (this=0x54f0550, p_method=..., p_args=0x7fffffffb650, p_argcount=1, r_error=...) at core/object.cpp:919
#18 0x00000000038aba76 in Variant::call_ptr (this=0x685f1f8, p_method=..., p_args=0x7fffffffb650, p_argcount=1, r_ret=0x7fffffffb620, r_error=...) at core/variant_call.cpp:1129
#19 0x00000000014b1844 in GDScriptFunction::call (this=0x6a1bec0, p_instance=0x6a27060, p_args=0x0, p_argcount=0, r_err=..., p_state=0x0) at modules/gdscript/gdscript_function.cpp:1088
#20 0x0000000001459678 in GDScriptInstance::_ml_call_reversed (this=0x6a27060, sptr=0x6a69ff0, p_method=..., p_args=0x0, p_argcount=0) at modules/gdscript/gdscript.cpp:1269
#21 0x00000000014596ea in GDScriptInstance::call_multilevel_reversed (this=0x6a27060, p_method=..., p_args=0x0, p_argcount=0) at modules/gdscript/gdscript.cpp:1276
#22 0x0000000002a107a2 in Node::_notification (this=0x6a70de0, p_notification=13) at scene/main/node.cpp:149
#23 0x000000000141f016 in Node::_notificationv (this=0x6a70de0, p_notification=13, p_reversed=false) at ./scene/main/node.h:46
#24 0x000000000141f63b in CanvasItem::_notificationv (this=0x6a70de0, p_notification=13, p_reversed=false) at ./scene/2d/canvas_item.h:166
#25 0x0000000002e83b9b in Node2D::_notificationv (this=0x6a70de0, p_notification=13, p_reversed=false) at ./scene/2d/node_2d.h:38
#26 0x000000000381e527 in Object::notification (this=0x6a70de0, p_notification=13, p_reversed=false) at core/object.cpp:929
#27 0x0000000002a10b9d in Node::_propagate_ready (this=0x6a70de0) at scene/main/node.cpp:196
#28 0x0000000002a10b24 in Node::_propagate_ready (this=0x68a9020) at scene/main/node.cpp:188
#29 0x0000000002a1cbb4 in Node::_set_tree (this=0x68a9020, p_tree=0x68a6e20) at scene/main/node.cpp:2571
#30 0x0000000002a4069c in SceneTree::init (this=0x68a6e20) at scene/main/scene_tree.cpp:463
#31 0x0000000001398861 in OS_X11::run (this=0x7fffffffcde0) at platform/x11/os_x11.cpp:3595
#32 0x000000000138752c in main (argc=1, argv=0x7fffffffd638) at platform/x11/godot_x11.cpp:56

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants