NURBS curve with a single point crashes Blender #117709

Closed
opened 2024-02-01 07:39:37 +01:00 by Ralph · 10 comments

System Information
Operating system: macOS-13.4.1-arm64-arm-64bit 64 Bits
Graphics card: Metal API Apple M2 Max 1.2

Blender Version
Broken: version: 4.0.2, branch: blender-v4.0-release, commit date: 2023-12-05 07:41, hash: 9be62e85b727
Worked: (newest version of Blender that worked as expected)

Short description of error

Blender crashes when trying to open Object Data Properties->Active Spline for a NURBS curve with a single control point.

Exact steps for others to reproduce the error

From a factory reset:

  1. I wrote a Python script to create a primitive NURBS curve (with 4 points) then deleted points at index 1, 2, and 3 leaving only the first point at index 0.

OR...

You can add a Nurbs Curve manually through the UI and delete those same points in EDIT mode.

  1. With the NURBS curve selected click on Object Data Properties.

  2. Click on "Active Spline" to expand it.

  3. BOOM! Blender crashes with this stderr in the terminal window: "WARN (bke.anim): source/blender/blenkernel/intern/anim_path.cc:70 BKE_anim_path_calc_data: No bev list data!
    Trace/BPT trap: 5"

If you are already in Object Data Properties->Active Spline and then try to delete those same three control points it's BOOM again.

I suspect it's the "Order U" value which has a maximum value of 2 when there are two control points, a maximum value of 3 when there are 3 control points, and so on for 4 and 5 points. But Order U chokes when there is only one control point.

**System Information** Operating system: macOS-13.4.1-arm64-arm-64bit 64 Bits Graphics card: Metal API Apple M2 Max 1.2 **Blender Version** Broken: version: 4.0.2, branch: blender-v4.0-release, commit date: 2023-12-05 07:41, hash: `9be62e85b727` Worked: (newest version of Blender that worked as expected) **Short description of error** Blender crashes when trying to open Object Data Properties->Active Spline for a NURBS curve with a single control point. **Exact steps for others to reproduce the error** From a factory reset: 1) I wrote a Python script to create a primitive NURBS curve (with 4 points) then deleted points at index 1, 2, and 3 leaving only the first point at index 0. OR... You can add a Nurbs Curve manually through the UI and delete those same points in EDIT mode. 2) With the NURBS curve selected click on Object Data Properties. 3) Click on "Active Spline" to expand it. 4) BOOM! Blender crashes with this stderr in the terminal window: "WARN (bke.anim): source/blender/blenkernel/intern/anim_path.cc:70 BKE_anim_path_calc_data: No bev list data! Trace/BPT trap: 5" If you are already in Object Data Properties->Active Spline and then try to delete those same three control points it's BOOM again. I suspect it's the "Order U" value which has a maximum value of 2 when there are two control points, a maximum value of 3 when there are 3 control points, and so on for 4 and 5 points. But Order U chokes when there is only one control point.
Ralph added the
Priority
Normal
Type
Report
Status
Needs Triage
labels 2024-02-01 07:39:38 +01:00
Member

Hi, thanks for the report. Unable to confirm the crash. Though I can confirm the console error in anim_path.cc due to nullptr bl

Hi, thanks for the report. Unable to confirm the crash. Though I can confirm the console error in `anim_path.cc` due to nullptr `bl`
Pratik Borhade added
Module
Modeling
Status
Confirmed
and removed
Status
Needs Triage
labels 2024-02-01 11:45:25 +01:00
Member

Not getting a crash either

Note we are already warning:

image

@PratikPB2123 : I think the warning WARN (bke.anim) does not justify confirming this.

Maybe the crash is only happening on Mac? @mano-wii : could you check?

Not getting a crash either Note we are already warning: ![image](/attachments/a889e771-757e-4b7d-b92a-6486d8b16769) @PratikPB2123 : I think the warning `WARN (bke.anim)` does not justify confirming this. Maybe the crash is only happening on Mac? @mano-wii : could you check?
Philipp Oeser added
Status
Needs Triage
Platform
macOS
and removed
Status
Confirmed
labels 2024-02-01 14:02:04 +01:00
Member

Indeed, I rushed here a bit. Thought bl/bevlist should not be null here? Need to investigate this more.
@Prefect , can you share logs: https://docs.blender.org/manual/en/dev/troubleshooting/crash.html#macos

Indeed, I rushed here a bit. Thought `bl/bevlist` should not be null here? Need to investigate this more. @Prefect , can you share logs: https://docs.blender.org/manual/en/dev/troubleshooting/crash.html#macos
Pratik Borhade added
Status
Needs Information from User
and removed
Status
Needs Triage
labels 2024-02-02 04:13:34 +01:00
Author

Hi Pratik. Just FYI, the url you sent refers to a crash file with a .crash extension. Apparently, for whatever reason, it is a .ips file located in the ~/Library/Logs/DiagnosticReports/ directory named "Blender-2024-02-02-003149.ips".

It is attached.

Thanks!

Hi Pratik. Just FYI, the url you sent refers to a crash file with a .crash extension. Apparently, for whatever reason, it is a .ips file located in the ~/Library/Logs/DiagnosticReports/ directory named "Blender-2024-02-02-003149.ips". It is attached. Thanks!
Ralph closed this issue 2024-02-02 07:07:45 +01:00
Blender Bot added
Status
Archived
and removed
Status
Needs Information from User
labels 2024-02-02 07:07:46 +01:00
Ralph reopened this issue 2024-02-02 07:08:21 +01:00
Blender Bot added
Status
Needs Triage
and removed
Status
Archived
labels 2024-02-02 07:08:23 +01:00
Author

Sorry, I closed the issue inadvertently because the button says "Comment and Close". I thought it meant close the window I suppose. It really should say "Comment and Close Issue".

Sorry, I closed the issue inadvertently because the button says "Comment and Close". I thought it meant close the window I suppose. It really should say "Comment and Close Issue".
Member

Thanks. Crash occurred in main-thread inside function BKE_nurb_valid_message (possibly due to wrong/insufficient buffer length).
What is the display language set for OS and in blender?

Thanks. Crash occurred in main-thread inside function `BKE_nurb_valid_message` (possibly due to wrong/insufficient buffer length). What is the display language set for OS and in blender?
Pratik Borhade added
Status
Needs Information from User
and removed
Status
Needs Triage
labels 2024-02-02 08:01:10 +01:00
Author

Both English, although I did not realize Spanish was the 2nd one listed for Mac OS. See attached.

Both English, although I did not realize Spanish was the 2nd one listed for Mac OS. See attached.
Member

Thanks. Will wait for Germano to verify the crash on mac

Thanks. Will wait for Germano to verify the crash on mac
Pratik Borhade added
Status
Needs Triage
and removed
Module
Modeling
Status
Needs Information from User
labels 2024-02-05 05:30:17 +01:00
Member

I can confirm a crash on my Mac, but can't get it to do it in a debug build.

System Information
Operating system: macOS-14.2.1-arm64-arm-64bit 64 Bits
Graphics card: Metal API Apple M1 Pro 1.2
Blender version: 4.1.0 Alpha, branch: main, commit date: 2024-02-06 22:40, hash: 057b80dc9ec9

I can confirm a crash on my Mac, but can't get it to do it in a debug build. **System Information** Operating system: macOS-14.2.1-arm64-arm-64bit 64 Bits Graphics card: Metal API Apple M1 Pro 1.2 Blender version: 4.1.0 Alpha, branch: main, commit date: 2024-02-06 22:40, hash: `057b80dc9ec9`
Alaska added
Status
Confirmed
and removed
Status
Needs Triage
labels 2024-02-08 13:28:36 +01:00
Iliya Katushenock added the
Module
Modeling
label 2024-02-08 13:31:54 +01:00
Contributor

On M1 Max brk #0x01 instruction is compiled in after RPT_("At least two points required") call.

assembly.png

When writing BKE_nurb_valid_message I could not put TIP_ on variable, but rather on string literals, cause some magic was going behind the TIP_. Now it is the RPT_, but anyway, I don't see anything wrong in source.

On M1 Max `brk #0x01` instruction is compiled in after `RPT_("At least two points required")` call. ![assembly.png](/attachments/801d40cc-52ef-4607-9280-8572e71408a0) When writing `BKE_nurb_valid_message` I could not put `TIP_` on variable, but rather on string literals, cause some magic was going behind the `TIP_`. Now it is the `RPT_`, but anyway, I don't see anything wrong in source.
Hans Goudey added
Priority
High
Type
Bug
and removed
Priority
Normal
Type
Report
labels 2024-04-02 23:38:46 +02:00
Blender Bot added
Status
Resolved
and removed
Status
Confirmed
labels 2024-04-02 23:45:28 +02:00
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
5 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#117709
No description provided.