hooking linked duplicate objects with multiple viewport material colors in cycles to an empty causes blender to crash #46913

Closed
opened 2015-12-02 13:44:37 +01:00 by Bubble Bobble · 6 comments

System Information
Windows 7, nvidia quadro 1000m

Blender Version
Broken: 2.76b f337fea
Worked: N/A

Short description of error
hooking linked duplicate objects with multiple viewport material colors in cycles to an empty causes blender to crash

Exact steps for others to reproduce the error

linked object hook bug.blend

  1. open the attached blend file
  2. select the empty
  3. shift select one of the three linked mesh objects and tab into edit mode (faces to hook are already selected in edit mode)
  4. ctrl-h and hook to selected objects
  5. blender crashes

notes: this happens only when multiple materials with unique viewport colors are being hooked. It does not crash with multiple materials with the same viewport display. Interesting behavior all around. If this is a todo so be it, but it was driving me nuts! I see now without crashing that duplicated linked objects become unlinked automatically, but with unique viewport colors it causes blender to crash. Thanks for all you do, everyone!!

**System Information** Windows 7, nvidia quadro 1000m **Blender Version** Broken: 2.76b f337fea Worked: N/A **Short description of error** hooking linked duplicate objects with multiple viewport material colors in cycles to an empty causes blender to crash **Exact steps for others to reproduce the error** [linked object hook bug.blend](https://archive.blender.org/developer/F261980/linked_object_hook_bug.blend) 1) open the attached blend file 2) select the empty 3) shift select one of the three linked mesh objects and tab into edit mode (faces to hook are already selected in edit mode) 4) ctrl-h and hook to selected objects 5) blender crashes notes: this happens only when multiple materials with unique viewport colors are being hooked. It does not crash with multiple materials with the same viewport display. Interesting behavior all around. If this is a todo so be it, but it was driving me nuts! I see now without crashing that duplicated linked objects become unlinked automatically, but with unique viewport colors it causes blender to crash. Thanks for all you do, everyone!!
Author

Changed status to: 'Open'

Changed status to: 'Open'
Author

Added subscriber: @JimCantley

Added subscriber: @JimCantley
Added subscribers: @MikeErwin, @Sergey, @Psy-Fi, @ideasman42, @brecht, @mont29

Crash confirmed, happens in draw code, which seems to get invalid (freed) data from derived mesh, see asan backtrace below. @Sergey, @ideasman42, @brecht, @MikeErwin, @Psy-Fi, does any of you have idea of the problem off hands?

==1659==ERROR: AddressSanitizer: heap-use-after-free on address 0x60c0002635d0 at pc 0x000003d1c3ca bp 0x7ffefe028300 sp 0x7ffefe0282f8
READ of size 2 at 0x60c0002635d0 thread T0
    - 0 0x3d1c3c9 in cdDM_GPUobject_new /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/cdderivedmesh.c:1726
    - 1 0x3aadf45 in gpu_buffer_setup_common /home/i74700deb64/blender/__work__/src/source/blender/gpu/intern/gpu_buffers.c:630
    - 2 0x3aae06d in GPU_vertex_setup /home/i74700deb64/blender/__work__/src/source/blender/gpu/intern/gpu_buffers.c:641
    - 3 0x3d12820 in cdDM_drawFacesSolid /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/cdderivedmesh.c:460
    - 4 0x23287ae in draw_mesh_fancy /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/drawobject.c:4226
    - 5 0x232969e in draw_mesh_object /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/drawobject.c:4380
    - 6 0x23459aa in draw_object /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/drawobject.c:7826
    - 7 0x2291a7d in view3d_draw_objects /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/view3d_draw.c:2831
    - 8 0x2299329 in view3d_main_region_draw_objects /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/view3d_draw.c:3892
    - 9 0x229a53b in view3d_main_region_draw /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/view3d_draw.c:4044
    - 10 0x2cf6999 in ED_region_do_draw /home/i74700deb64/blender/__work__/src/source/blender/editors/screen/area.c:517
    - 11 0x1fed6ee in wm_method_draw_triple /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_draw.c:642
    - 12 0x1fefd65 in wm_draw_update /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_draw.c:1053
    - 13 0x1fe0013 in WM_main /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm.c:495
    - 14 0x1fddd48 in main /home/i74700deb64/blender/__work__/src/source/creator/creator.c:2013
    - 15 0x7fb9db343b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44)
    #16 0x1fd6f5a  (/home/i74700deb64/blender/__work__/build_cmake_dbg/bin/blender+0x1fd6f5a)

0x60c0002635d0 is located 16 bytes inside of 128-byte region [0x60c0002635c0,0x60c000263640)
freed by thread T0 here:
    - 0 0x7fb9e603e0da in __interceptor_free (/usr/lib/x86_64-linux-gnu/libasan.so.2+0x940da)
    - 1 0x4e5df46 in MEM_lockfree_freeN /home/i74700deb64/blender/__work__/src/intern/guardedalloc/intern/mallocn_lockfree_impl.c:169
    - 2 0x3dc57c6 in customData_free_layer__internal /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/customdata.c:1565
    - 3 0x3dc592d in CustomData_free /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/customdata.c:1588
    - 4 0x3713ee5 in BM_mesh_bm_to_me /home/i74700deb64/blender/__work__/src/source/blender/bmesh/intern/bmesh_mesh_conv.c:619
    - 5 0x29a778b in EDBM_mesh_load /home/i74700deb64/blender/__work__/src/source/blender/editors/mesh/editmesh_utils.c:398
    - 6 0x2bf1d58 in object_hook_index_array /home/i74700deb64/blender/__work__/src/source/blender/editors/object/object_hook.c:318
    - 7 0x2bf2d46 in add_hook_object /home/i74700deb64/blender/__work__/src/source/blender/editors/object/object_hook.c:476
    - 8 0x2bf3858 in object_add_hook_selob_exec /home/i74700deb64/blender/__work__/src/source/blender/editors/object/object_hook.c:583
    - 9 0x1ff7480 in wm_operator_invoke /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1103
    - 10 0x1ff81da in wm_operator_call_internal /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1302
    - 11 0x1ff83d5 in WM_operator_name_call_ptr /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1336
    - 12 0x27d625a in ui_apply_but_funcs_after /home/i74700deb64/blender/__work__/src/source/blender/editors/interface/interface_handlers.c:768
    - 13 0x281c07b in ui_popup_handler /home/i74700deb64/blender/__work__/src/source/blender/editors/interface/interface_handlers.c:9946
    - 14 0x1ff308c in wm_handler_ui_call /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:453
    - 15 0x1ffc21f in wm_handlers_do_intern /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2022
    - 16 0x1ffc809 in wm_handlers_do /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2106
    - 17 0x1ffe0b7 in wm_event_do_handlers /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2389
    - 18 0x1fdfffb in WM_main /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm.c:489
    - 19 0x1fddd48 in main /home/i74700deb64/blender/__work__/src/source/creator/creator.c:2013
    #20 0x7fb9db343b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44)

previously allocated by thread T0 here:
    - 0 0x7fb9e603e37a in malloc (/usr/lib/x86_64-linux-gnu/libasan.so.2+0x9437a)
    - 1 0x4e5e5d0 in MEM_lockfree_mallocN /home/i74700deb64/blender/__work__/src/intern/guardedalloc/intern/mallocn_lockfree_impl.c:307
    - 2 0x47b38ba in read_struct /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:1854
    - 3 0x47e79e8 in read_data_into_oldnewmap /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:7823
    - 4 0x47e8481 in read_libblock /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:7938
    - 5 0x47eb383 in blo_read_file_internal /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:8380
    - 6 0x47a8812 in BLO_read_from_file /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readblenentry.c:329
    - 7 0x3cda403 in BKE_read_file /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/blender.c:519
    - 8 0x2007009 in WM_file_read /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_files.c:540
    - 9 0x2029fec in wm_file_read_opwrap /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_operators.c:2397
    - 10 0x202a56a in wm_open_mainfile_exec /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_operators.c:2456
    - 11 0x1ffae17 in wm_handler_fileselect_do /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1823
    - 12 0x1ffb7f1 in wm_handler_fileselect_call /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1902
    - 13 0x1ffc2c6 in wm_handlers_do_intern /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2028
    - 14 0x1ffc809 in wm_handlers_do /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2106
    - 15 0x1ffe0b7 in wm_event_do_handlers /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2389
    - 16 0x1fdfffb in WM_main /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm.c:489
    - 17 0x1fddd48 in main /home/i74700deb64/blender/__work__/src/source/creator/creator.c:2013
    #18 0x7fb9db343b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44)
Crash confirmed, happens in draw code, which seems to get invalid (freed) data from derived mesh, see asan backtrace below. @Sergey, @ideasman42, @brecht, @MikeErwin, @Psy-Fi, does any of you have idea of the problem off hands? ``` ==1659==ERROR: AddressSanitizer: heap-use-after-free on address 0x60c0002635d0 at pc 0x000003d1c3ca bp 0x7ffefe028300 sp 0x7ffefe0282f8 READ of size 2 at 0x60c0002635d0 thread T0 - 0 0x3d1c3c9 in cdDM_GPUobject_new /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/cdderivedmesh.c:1726 - 1 0x3aadf45 in gpu_buffer_setup_common /home/i74700deb64/blender/__work__/src/source/blender/gpu/intern/gpu_buffers.c:630 - 2 0x3aae06d in GPU_vertex_setup /home/i74700deb64/blender/__work__/src/source/blender/gpu/intern/gpu_buffers.c:641 - 3 0x3d12820 in cdDM_drawFacesSolid /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/cdderivedmesh.c:460 - 4 0x23287ae in draw_mesh_fancy /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/drawobject.c:4226 - 5 0x232969e in draw_mesh_object /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/drawobject.c:4380 - 6 0x23459aa in draw_object /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/drawobject.c:7826 - 7 0x2291a7d in view3d_draw_objects /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/view3d_draw.c:2831 - 8 0x2299329 in view3d_main_region_draw_objects /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/view3d_draw.c:3892 - 9 0x229a53b in view3d_main_region_draw /home/i74700deb64/blender/__work__/src/source/blender/editors/space_view3d/view3d_draw.c:4044 - 10 0x2cf6999 in ED_region_do_draw /home/i74700deb64/blender/__work__/src/source/blender/editors/screen/area.c:517 - 11 0x1fed6ee in wm_method_draw_triple /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_draw.c:642 - 12 0x1fefd65 in wm_draw_update /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_draw.c:1053 - 13 0x1fe0013 in WM_main /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm.c:495 - 14 0x1fddd48 in main /home/i74700deb64/blender/__work__/src/source/creator/creator.c:2013 - 15 0x7fb9db343b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44) #16 0x1fd6f5a (/home/i74700deb64/blender/__work__/build_cmake_dbg/bin/blender+0x1fd6f5a) 0x60c0002635d0 is located 16 bytes inside of 128-byte region [0x60c0002635c0,0x60c000263640) freed by thread T0 here: - 0 0x7fb9e603e0da in __interceptor_free (/usr/lib/x86_64-linux-gnu/libasan.so.2+0x940da) - 1 0x4e5df46 in MEM_lockfree_freeN /home/i74700deb64/blender/__work__/src/intern/guardedalloc/intern/mallocn_lockfree_impl.c:169 - 2 0x3dc57c6 in customData_free_layer__internal /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/customdata.c:1565 - 3 0x3dc592d in CustomData_free /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/customdata.c:1588 - 4 0x3713ee5 in BM_mesh_bm_to_me /home/i74700deb64/blender/__work__/src/source/blender/bmesh/intern/bmesh_mesh_conv.c:619 - 5 0x29a778b in EDBM_mesh_load /home/i74700deb64/blender/__work__/src/source/blender/editors/mesh/editmesh_utils.c:398 - 6 0x2bf1d58 in object_hook_index_array /home/i74700deb64/blender/__work__/src/source/blender/editors/object/object_hook.c:318 - 7 0x2bf2d46 in add_hook_object /home/i74700deb64/blender/__work__/src/source/blender/editors/object/object_hook.c:476 - 8 0x2bf3858 in object_add_hook_selob_exec /home/i74700deb64/blender/__work__/src/source/blender/editors/object/object_hook.c:583 - 9 0x1ff7480 in wm_operator_invoke /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1103 - 10 0x1ff81da in wm_operator_call_internal /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1302 - 11 0x1ff83d5 in WM_operator_name_call_ptr /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1336 - 12 0x27d625a in ui_apply_but_funcs_after /home/i74700deb64/blender/__work__/src/source/blender/editors/interface/interface_handlers.c:768 - 13 0x281c07b in ui_popup_handler /home/i74700deb64/blender/__work__/src/source/blender/editors/interface/interface_handlers.c:9946 - 14 0x1ff308c in wm_handler_ui_call /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:453 - 15 0x1ffc21f in wm_handlers_do_intern /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2022 - 16 0x1ffc809 in wm_handlers_do /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2106 - 17 0x1ffe0b7 in wm_event_do_handlers /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2389 - 18 0x1fdfffb in WM_main /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm.c:489 - 19 0x1fddd48 in main /home/i74700deb64/blender/__work__/src/source/creator/creator.c:2013 #20 0x7fb9db343b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44) previously allocated by thread T0 here: - 0 0x7fb9e603e37a in malloc (/usr/lib/x86_64-linux-gnu/libasan.so.2+0x9437a) - 1 0x4e5e5d0 in MEM_lockfree_mallocN /home/i74700deb64/blender/__work__/src/intern/guardedalloc/intern/mallocn_lockfree_impl.c:307 - 2 0x47b38ba in read_struct /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:1854 - 3 0x47e79e8 in read_data_into_oldnewmap /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:7823 - 4 0x47e8481 in read_libblock /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:7938 - 5 0x47eb383 in blo_read_file_internal /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readfile.c:8380 - 6 0x47a8812 in BLO_read_from_file /home/i74700deb64/blender/__work__/src/source/blender/blenloader/intern/readblenentry.c:329 - 7 0x3cda403 in BKE_read_file /home/i74700deb64/blender/__work__/src/source/blender/blenkernel/intern/blender.c:519 - 8 0x2007009 in WM_file_read /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_files.c:540 - 9 0x2029fec in wm_file_read_opwrap /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_operators.c:2397 - 10 0x202a56a in wm_open_mainfile_exec /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_operators.c:2456 - 11 0x1ffae17 in wm_handler_fileselect_do /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1823 - 12 0x1ffb7f1 in wm_handler_fileselect_call /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:1902 - 13 0x1ffc2c6 in wm_handlers_do_intern /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2028 - 14 0x1ffc809 in wm_handlers_do /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2106 - 15 0x1ffe0b7 in wm_event_do_handlers /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm_event_system.c:2389 - 16 0x1fdfffb in WM_main /home/i74700deb64/blender/__work__/src/source/blender/windowmanager/intern/wm.c:489 - 17 0x1fddd48 in main /home/i74700deb64/blender/__work__/src/source/creator/creator.c:2013 #18 0x7fb9db343b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44) ```

This issue was referenced by 6e10ad5ea8

This issue was referenced by 6e10ad5ea825783ff044973849358d8ef0759ec3

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#46913
No description provided.