NodeTree.links.new() can connect one output to a multi-input many times; access violation occurs when disconnecting #89416

Closed
opened 2021-06-24 20:07:25 +02:00 by Fen · 13 comments

System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 446.14

Blender Version
Broken: version: 2.93.1, branch: master, commit date: 2021-06-22 05:57, hash: 1b8d33b18c
Worked: Latest 3.0.0 alpha does not crash or have visual problems.

Short description of error
Nodes can be linked via Python script by using NodeTree.links.new(input, output). If this is done repeatedly, the same socket can be connected many times, resulting in a visual bug. Trying to disconnect one of these noodles results in an access violation.

image.png

Exact steps for others to reproduce the error

  1. Open the attached file
  2. Try to disconnect one of the wires by grabbing on the multi-input socket
  3. Crash

multi-link-crash.blend

To cause the problem:

  1. Run the Python script. It creates a Join node and a Cube node, then links them together five times.

Stack trace: P2211

This bug is completely gone in 3.0.0: only one link is produced. If you set up the glitch in 2.93.1 and load the .blend in 3.0.0, the visual bug is gone, and the noodles can be safely unplugged.

So, this will become moot once 3.0 is out, but it's still a (minor) problem in the current release.

**System Information** Operating system: Windows-10-10.0.19041-SP0 64 Bits Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 446.14 **Blender Version** Broken: version: 2.93.1, branch: master, commit date: 2021-06-22 05:57, hash: `1b8d33b18c` Worked: Latest 3.0.0 alpha does *not* crash or have visual problems. **Short description of error** Nodes can be linked via Python script by using `NodeTree.links.new(input, output)`. If this is done repeatedly, the same socket can be connected many times, resulting in a visual bug. Trying to disconnect one of these noodles results in an access violation. ![image.png](https://archive.blender.org/developer/F10194843/image.png) **Exact steps for others to reproduce the error** 1. Open the attached file 2. Try to disconnect one of the wires by grabbing on the multi-input socket 3. Crash [multi-link-crash.blend](https://archive.blender.org/developer/F10194849/multi-link-crash.blend) To cause the problem: 1. Run the Python script. It creates a Join node and a Cube node, then links them together five times. Stack trace: [P2211](https://archive.blender.org/developer/P2211.txt) This bug is completely gone in 3.0.0: only one link is produced. If you set up the glitch in 2.93.1 and load the .blend in 3.0.0, the visual bug is gone, and the noodles can be safely unplugged. So, this will become moot once 3.0 is out, but it's still a (minor) problem in the current release.
Author

Added subscriber: @chemicalcrux

Added subscriber: @chemicalcrux
Member

Added subscriber: @PratikPB2123

Added subscriber: @PratikPB2123
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

Can produce the crash even with 2.93LTS

Can produce the crash even with 2.93LTS
Member

Added subscriber: @wannes.malfait

Added subscriber: @wannes.malfait
Member

Maybe D11570 wasn't merged into 2.93?

Maybe [D11570](https://archive.blender.org/developer/D11570) wasn't merged into 2.93?
Member

@wannes.malfait , yes the commit 03544ed54f is not yet merged in the branch blender-v2.93-release.

Need to backport the commit.

@wannes.malfait , yes the commit 03544ed54f is not yet merged in the branch `blender-v2.93-release`. Need to backport the commit.
Author

Ah, good find. I must've been scrounging around with the wrong keywords.

Ah, good find. I must've been scrounging around with the wrong keywords.
Member

Added subscriber: @JacquesLucke

Added subscriber: @JacquesLucke
Member

@JacquesLucke , any thoughts on backporting it to 2.93?

@JacquesLucke , any thoughts on backporting it to 2.93?
Member

Added subscriber: @HooglyBoogly

Added subscriber: @HooglyBoogly
Member

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'
Hans Goudey self-assigned this 2021-11-09 23:41:10 +01:00
Member

Okay, looks like the commit has been backported and all is well. Thanks.

Okay, looks like the commit has been backported and all is well. Thanks.
Sign in to join this conversation.
4 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: blender/blender#89416
No description provided.