Maniphest T101699

Regression: Crash in sculpt mode using shift+h
Closed, ResolvedBUG

Assigned To
Joseph Eagar (joeedh)
Authored By
Nahuel Belich (belich)
Oct 8 2022, 12:55 PM
Tags
  • BF Blender
  • Sculpt, Paint & Texture
Subscribers
Joseph Eagar (joeedh)
Nahuel Belich (belich)
Pratik Borhade (PratikPB2123)
TheRedWaxPolice (TheRedWaxPolice)

Description

System Information
Operating system: Linux-5.15.0-48-generic-x86_64-with-glibc2.31 64 Bits
Graphics card: NVIDIA GeForce GTX 1070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 470.103.01

Blender Version
Broken: version: 3.4.0 Alpha, branch: master, commit date: 2022-10-07 22:54, hash: rB3d209d161988
Worked: 3.3
Caused by rB22c3db72ca2f: Sculpt: Visibility bugfixes

Short description of error
If you try to hide from object mode using shift+h without previously set a face set it crashes.
Crash will not happen with default cube (reads face_sets correctly)

Exact steps for others to reproduce the error

  • Delete default cube and add new
  • enter sculpt mode
  • Press shift+h (same goes for Alt+H but it wont crash if D16199 is applied)
  • Crash

Revisions and Commits

Related Objects

Mentioned In
rBda25006bc4c7: Sculpt: T101699: Face set change visibility crashes on no face sets
T101722: Regression: Missing default face set for primitive meshes
Mentioned Here
rBda25006bc4c7: Sculpt: T101699: Face set change visibility crashes on no face sets
T101722: Regression: Missing default face set for primitive meshes
D16206: Fix T101699: Crash on hiding all face sets
D16199: Fix T101694: Change operator for unhide face sets
rB22c3db72ca2f: Sculpt: Visibility bugfixes

Event Timeline

Nahuel Belich (belich) created this task.Oct 8 2022, 12:55 PM
Nahuel Belich (belich) added a comment.EditedOct 8 2022, 1:03 PM

never mind found what cause the error, im not sure why it make it crash thoug, but its not a offical add on, ill poke the author in twitter.

Python: Traceback (most recent call last):

File "/home/belich/.config/blender/3.4/scripts/addons/b3dsdf/__init__.py", line 135, in poll
  return context.space_data.node_tree

AttributeError: 'SpaceView3D' object has no attribute 'node_tree' # Error
Preferences saved # Info
bpy.ops.sculpt.sculptmode_toggle() # Operator

Nahuel Belich (belich) updated the task description.Oct 8 2022, 1:04 PM
Pratik Borhade (PratikPB2123) changed the task status from Needs Triage to Confirmed.Oct 10 2022, 10:48 AM
Pratik Borhade (PratikPB2123) added a project: Sculpt, Paint & Texture.
Pratik Borhade (PratikPB2123) added a subscriber: Pratik Borhade (PratikPB2123).

Thanks for the report. I can confirm the crash. I'll check

Pratik Borhade (PratikPB2123) claimed this task.Oct 10 2022, 10:59 AM
Pratik Borhade (PratikPB2123) triaged this task as High priority.Oct 10 2022, 11:36 AM
Pratik Borhade (PratikPB2123) added a subscriber: Joseph Eagar (joeedh).

First bad commit: rB22c3db72ca2f: Sculpt: Visibility bugfixes
@Joseph Eagar (joeedh) ^
Crash triggers due to accessing unreadable memory.

Pratik Borhade (PratikPB2123) renamed this task from Crash in sculpt mode using shift+h to Regression: Crash in sculpt mode using shift+h .Oct 10 2022, 11:40 AM
Pratik Borhade (PratikPB2123) removed Pratik Borhade (PratikPB2123) as the assignee of this task.
Pratik Borhade (PratikPB2123) updated the task description.
Pratik Borhade (PratikPB2123) added a comment.Oct 10 2022, 12:06 PM

easy fix would be: cancel sculpt_face_sets_change_visibility_exec operator when face_sets value is NULL
But it'll break the consistency: In previous versions newly added mesh also has one face set by default, I guess.

Pratik Borhade (PratikPB2123) claimed this task.EditedOct 10 2022, 12:08 PM

But it'll break the consistency: In previous versions newly added mesh also has one face set by default, I guess.

Commit responsible for it seems different. I'll open a separate report for that: T101722: Regression: Missing default face set for primitive meshes
For this report simple If check is the fix. Submitted the fix: D16206: Fix T101699: Crash on hiding all face sets

Pratik Borhade (PratikPB2123) added a revision: D16206: Fix T101699: Crash on hiding all face sets.Oct 10 2022, 12:17 PM
Julien Kaspar (JulienKaspar) moved this task from Backlog to Bugs on the Sculpt, Paint & Texture board.Oct 10 2022, 1:02 PM
Julien Kaspar (JulienKaspar) changed the subtype of this task from "Report" to "Bug".
Joseph Eagar (joeedh) mentioned this in rBda25006bc4c7: Sculpt: T101699: Face set change visibility crashes on no face sets.Oct 10 2022, 10:37 PM
TheRedWaxPolice (TheRedWaxPolice) added a subscriber: TheRedWaxPolice (TheRedWaxPolice).Oct 11 2022, 4:01 AM
Pratik Borhade (PratikPB2123) closed this task as Resolved.Oct 11 2022, 11:07 AM
Pratik Borhade (PratikPB2123) reassigned this task from Pratik Borhade (PratikPB2123) to Joseph Eagar (joeedh).

Fixed: rBda25006bc4c7: Sculpt: T101699: Face set change visibility crashes on no face sets