Page MenuHome

Crash on 'CTRL' or 'Command'+LMB in edit mode
Closed, ResolvedPublicBUG

Description

System Information
Operating system: Darwin-18.7.0-x86_64-i386-64bit 64 Bits
Graphics card: NVIDIA GeForce GT 750M OpenGL Engine NVIDIA Corporation 4.1 NVIDIA-12.0.24 355.11.10.50.10.103

Blender Version
Broken: version: 2.82 (sub 4), branch: master, commit date: 2019-12-08 18:49, hash: rB761111efb8e4

Worked:
Does not crash in Current stable version 2.81a

Short description of error
'CTRL' or 'Command' + mouse click (in 3D Viewport) in edit mode crashes Blender. Only broken using left-click select mode. Does not crash while using right-click select mode.

Exact steps for others to reproduce the error

  1. Enable left-click select in the preferences
  2. Select an object and switch into edit mode
  3. CTRL + LMB somewhere in the 3D View.

Event Timeline

I can reproduce this with rB761111efb8e40fa030cb48761df8c066d0e43ae5 as well as the most recent master.

Robert Guetzkow (rjg) renamed this task from Crash on 'Control' OR 'Command' + click in edit mode to Crash on 'CTRL' or 'Command'+LMB in edit mode.Dec 9 2019, 7:41 PM
Robert Guetzkow (rjg) lowered the priority of this task from 90 to High.
Robert Guetzkow (rjg) updated the task description. (Show Details)
Robert Guetzkow (rjg) updated the task description. (Show Details)

Stacktrace from build based on rB62ef59aa0cca736b09192b67cc924180d9c2f9f9, the GPUFrameBuffer passed into GPU_framebuffer_bind is NULL.

GPU_framebuffer_bind(GPUFrameBuffer * fb) Line 510	C
OVERLAY_edit_mesh_draw(OVERLAY_Data * vedata) Line 365	C
OVERLAY_draw_scene(void * vedata) Line 417	C
drw_engines_draw_scene() Line 1218	C
DRW_draw_select_loop(Depsgraph * depsgraph, ARegion * ar, View3D * v3d, bool UNUSED_use_obedit_skip, bool draw_surface, bool UNUSED_use_nearest, const rcti * rect, bool(*)(eDRWSelectStage, void *) select_pass_fn, void * select_pass_user_data, bool(*)(Object *, void *) object_filter_fn, void * object_filter_user_data) Line 2320	C
view3d_opengl_select(ViewContext * vc, unsigned int * buffer, unsigned int bufsize, const rcti * input, <unnamed-enum-VIEW3D_SELECT_ALL> select_mode, <unnamed-enum-VIEW3D_SELECT_FILTER_NOP> select_filter) Line 1160	C
mixed_bones_object_selectbuffer(ViewContext * vc, unsigned int * buffer, const int * mval, <unnamed-enum-VIEW3D_SELECT_FILTER_NOP> select_filter, bool do_nearest) Line 1684	C
mixed_bones_object_selectbuffer_extended(ViewContext * vc, unsigned int * buffer, const int * mval, <unnamed-enum-VIEW3D_SELECT_FILTER_NOP> select_filter, bool use_cycle, bool enumerate, bool * r_do_nearest) Line 1783	C
ed_object_select_pick(bContext * C, const int * mval, bool extend, bool deselect, bool toggle, bool obcenter, bool enumerate, bool object) Line 2061	C
view3d_select_exec(bContext * C, wmOperator * op) Line 2421	C
view3d_select_invoke(bContext * C, wmOperator * op, const wmEvent * event) Line 2461	C
wm_operator_invoke(bContext * C, wmOperatorType * ot, wmEvent * event, PointerRNA * properties, ReportList * reports, const bool poll_only, bool use_last_properties) Line 1441	C
wm_handler_operator_call(bContext * C, ListBase * handlers, wmEventHandler * handler_base, wmEvent * event, PointerRNA * properties) Line 2281	C
wm_handlers_do_keymap_with_keymap_handler(bContext * C, wmEvent * event, ListBase * handlers, wmEventHandler_Keymap * handler, wmKeyMap * keymap, const bool do_debug_handler) Line 2594	C
wm_handlers_do_intern(bContext * C, wmEvent * event, ListBase * handlers) Line 2731	C
wm_handlers_do(bContext * C, wmEvent * event, ListBase * handlers) Line 3078	C
wm_event_do_handlers(bContext * C) Line 3446	C
WM_main(bContext * C) Line 420	C
main(int argc, const unsigned char * * UNUSED_argv_c) Line 498	C
Robert Guetzkow (rjg) added a comment.EditedDec 9 2019, 8:45 PM

Not my area of expertise, but could it be that a if (DRW_state_is_fbo()) { } check is missing in OVERLAY_edit_mesh_draw() that was introduced for other draw functions in rBd21a8dcae295154c71b8c5c6d480d877af5c0b2a ? Adding the check avoids the crash.

Robert Guetzkow (rjg) changed the task status from Unknown Status to Resolved.Dec 12 2019, 11:58 AM
Evan Wilson (EAW) added a subscriber: user1 (user1).

I can confirm that this has been fixed in the latest version of master.

  • 2.82 (sub 5), branch: master, commit date: 2019-12-11 18:53, hash: rBb03066f7ee07