Page MenuHome

Crash running with --debug-wm and pressing F3
Closed, ResolvedPublicBUG

Description

System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: GeForce GTX 950/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 445.75

Blender Version
Broken: version: 2.92.0 Alpha, branch: master, commit date: 2020-11-09 22:42, hash: rBb5d310b569e0
Worked: 2.90.1, steam release

Short description of error
Crash to desktop. Discussed and agreed on #blender-coders chat to file this.

Exact steps for others to reproduce the error
Run with --debug-wm. Close the banner. Press F3.

Event Timeline

Full stack:

blender.exe!RNA_struct_iterator_property(StructRNA * type) Line 771 (b:\bf-blender\source\blender\makesrna\intern\rna_access.c:771)
blender.exe!WM_operator_properties_default(PointerRNA * ptr, const bool do_update) Line 657 (b:\bf-blender\source\blender\windowmanager\intern\wm_operators.c:657)
blender.exe!WM_operator_properties_default(PointerRNA * ptr, const bool do_update) Line 663 (b:\bf-blender\source\blender\windowmanager\intern\wm_operators.c:663)
blender.exe!wm_keymap_item_find(const bContext * C, const unsigned char * opname, int opcontext, IDProperty * properties, bool is_strict, const wmKeyMapItemFind_Params * params, wmKeyMap * * r_keymap) Line 1569 (b:\bf-blender\source\blender\windowmanager\intern\wm_keymap.c:1569)
blender.exe!WM_key_event_operator_string(const bContext * C, const unsigned char * opname, int opcontext, IDProperty * properties, const bool is_strict, unsigned char * result, const int result_len) Line 1614 (b:\bf-blender\source\blender\windowmanager\intern\wm_keymap.c:1614)
blender.exe!ui_but_event_operator_string_from_operator(const bContext * C, uiBut * but, unsigned char * buf, const unsigned __int64 buf_len) Line 1176 (b:\bf-blender\source\blender\editors\interface\interface.c:1176)
blender.exe!ui_but_event_operator_string(const bContext * C, uiBut * but, unsigned char * buf, const unsigned __int64 buf_len) Line 1262 (b:\bf-blender\source\blender\editors\interface\interface.c:1262)
blender.exe!ui_menu_block_set_keymaps(const bContext * C, uiBlock * block) Line 1565 (b:\bf-blender\source\blender\editors\interface\interface.c:1565)
blender.exe!UI_block_end_ex(const bContext * C, uiBlock * block, const int * xy, int * r_xy) Line 1879 (b:\bf-blender\source\blender\editors\interface\interface.c:1879)
blender.exe!UI_block_end(const bContext * C, uiBlock * block) Line 1919 (b:\bf-blender\source\blender\editors\interface\interface.c:1919)
blender.exe!menu_items_from_ui_create(bContext * C, wmWindow * win, ScrArea * area_init, ARegion * region_init, bool include_all_areas) Line 679 (b:\bf-blender\source\blender\editors\interface\interface_template_search_menu.c:679)
blender.exe!UI_but_func_menu_search(uiBut * but) Line 1133 (b:\bf-blender\source\blender\editors\interface\interface_template_search_menu.c:1133)
blender.exe!wm_block_search_menu(bContext * C, ARegion * region, void * userdata) Line 1689 (b:\bf-blender\source\blender\windowmanager\intern\wm_operators.c:1689)
blender.exe!ui_popup_block_refresh(bContext * C, uiPopupBlockHandle * handle, ARegion * butregion, uiBut * but) Line 584 (b:\bf-blender\source\blender\editors\interface\interface_region_popup.c:584)
blender.exe!ui_popup_block_create(bContext * C, ARegion * butregion, uiBut * but, uiBlock *(*)(bContext *, ARegion *, void *) create_func, uiBlock *(*)(bContext *, uiPopupBlockHandle *, void *) handle_create_func, void * arg, void(*)(void *) arg_free) Line 821 (b:\bf-blender\source\blender\editors\interface\interface_region_popup.c:821)
blender.exe!UI_popup_block_invoke_ex(bContext * C, uiBlock *(*)(bContext *, ARegion *, void *) func, void * arg, void(*)(void *) arg_free, bool can_refresh) Line 588 (b:\bf-blender\source\blender\editors\interface\interface_region_menu_popup.c:588)
blender.exe!wm_search_menu_invoke(bContext * C, wmOperator * op, const wmEvent * event) Line 1767 (b:\bf-blender\source\blender\windowmanager\intern\wm_operators.c:1767)
blender.exe!wm_operator_invoke(bContext * C, wmOperatorType * ot, wmEvent * event, PointerRNA * properties, ReportList * reports, const bool poll_only, bool use_last_properties) Line 1288 (b:\bf-blender\source\blender\windowmanager\intern\wm_event_system.c:1288)
blender.exe!wm_handler_operator_call(bContext * C, ListBase * handlers, wmEventHandler * handler_base, wmEvent * event, PointerRNA * properties, const unsigned char * kmi_idname) Line 2133 (b:\bf-blender\source\blender\windowmanager\intern\wm_event_system.c:2133)
blender.exe!wm_handlers_do_keymap_with_keymap_handler(bContext * C, wmEvent * event, ListBase * handlers, wmEventHandler_Keymap * handler, wmKeyMap * keymap, const bool do_debug_handler) Line 2443 (b:\bf-blender\source\blender\windowmanager\intern\wm_event_system.c:2443)
blender.exe!wm_handlers_do_intern(bContext * C, wmEvent * event, ListBase * handlers) Line 2740 (b:\bf-blender\source\blender\windowmanager\intern\wm_event_system.c:2740)
blender.exe!wm_handlers_do(bContext * C, wmEvent * event, ListBase * handlers) Line 2864 (b:\bf-blender\source\blender\windowmanager\intern\wm_event_system.c:2864)
blender.exe!wm_event_do_handlers(bContext * C) Line 3395 (b:\bf-blender\source\blender\windowmanager\intern\wm_event_system.c:3395)
blender.exe!WM_main(bContext * C) Line 638 (b:\bf-blender\source\blender\windowmanager\intern\wm.c:638)
blender.exe!main(int argc, const unsigned char * * UNUSED_argv_c) Line 526 (b:\bf-blender\source\creator\creator.c:526)
blender.exe!invoke_main() Line 79 (d:\agent\_work\9\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:79)
blender.exe!__scrt_common_main_seh() Line 288 (d:\agent\_work\9\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
blender.exe!__scrt_common_main() Line 331 (d:\agent\_work\9\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:331)
blender.exe!mainCRTStartup() Line 17 (d:\agent\_work\9\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp:17)
kernel32.dll!00007ffbffe97034() (Unknown Source:0)
ntdll.dll!00007ffc010dcec1() (Unknown Source:0)
Campbell Barton (campbellbarton) changed the task status from Needs Triage to Confirmed.EditedNov 11 2020, 9:06 AM
Campbell Barton (campbellbarton) triaged this task as High priority.

Caused by:

ID pointer types should not be used by operators as we can't store the settings for re-use, or stored in keymap preferences.

As far as I can see, this should be disallowed by the API.

I'll commit a workaround for the crash, however using ID's in operators should be avoided (we can discuss alternatives in chat).

Campbell Barton (campbellbarton) changed the subtype of this task from "Report" to "Bug".Nov 11 2020, 9:11 AM