Page MenuHome

Applying a mirror modifier with bisect enabled on object with a multires modifier prevents saving file and crashes blender afterwards
Confirmed, HighPublic

Description

System Information
Operating system: Windows 10
Graphics card: RTX 3080

Blender Version
Broken: 2.92, 36deb8a48ef2, master, 2021-03-18, as found on the splash screen
Worked: Never

Short description of error
Applying a mirror modifier with Bisect enabled on an object having an unapplied Multiresolution modifier before it corrupts the file and crashes blender as soon as any action is performed after the fact.

Exact steps for others to reproduce the error
Based on the default startup or an attached .blend file (as simple as possible).

  1. Open the attached .blend file
  2. Apply the already added Mirror modifier
  3. Try saving the file
  4. Click anywhere

What happens

Blender most of the time crashes instantly when applying the mirror modifier, but if it doesn't, trying to save the file after applying the modifier results in an error saying "invalid args". Clicking anywhere after applying the modifier crashes Blender instantly everytime.

What was expected to happen

The mesh blender generates after applying the modifier, before crashing on the following action, seems to be fine; so this behavior should be kept the same. Only the crash itself should be fixed.

Event Timeline

Philipp Oeser (lichtwerk) changed the task status from Needs Triage to Confirmed.Wed, Mar 31, 11:36 AM

Can confirm, will check.

Philipp Oeser (lichtwerk) triaged this task as High priority.Wed, Mar 31, 12:11 PM

Hm, will dare setting this to high priority, not exactly sure which module is responsible, since it is multires, will add sculpt & paint.

BLI_assert(!"Cannot write chunks bigger than INT_MAX.");
1   raise                                                  0x7ffff77c39d5 
2   abort                                                  0x7ffff77ac8a4 
3   _BLI_assert_abort               BLI_assert.c      56   0xd2884b5      
4   writedata                       writefile.c       540  0x3b38191      
5   BLO_write_raw                   writefile.c       1285 0x3b39bcf      
6   BLO_write_float3_array          writefile.c       1392 0x3b39fff      
7   write_mdisps                    customdata.c      5037 0x394e2f6      
8   CustomData_blend_write          customdata.c      5087 0x394e505      
9   mesh_blend_write                mesh.c            242  0x34e8285      
10  write_file_handle               writefile.c       1025 0x3b39237      
11  BLO_write_file_mem              writefile.c       1277 0x3b39b84      
12  BKE_memfile_undo_encode         blender_undo.c    144  0x4bffe40      
13  memfile_undosys_step_encode     memfile_undo.c    101  0x48f10d9      
14  undosys_step_encode             undo_system.c     159  0x4c60932      
15  BKE_undosys_step_push_with_type undo_system.c     568  0x4c61e75      
16  BKE_undosys_step_push           undo_system.c     613  0x4c62053      
17  ED_undo_push                    ed_undo.c         155  0x48eebaf      
18  ED_undo_push_op                 ed_undo.c         413  0x48ef78e      
19  wm_operator_finished            wm_event_system.c 992  0x3a263a1      
20  wm_operator_invoke              wm_event_system.c 1386 0x3a27456