Maniphest T61210

Crash when accessing new Armature in the Outliner
Closed, Resolved

Assigned To
None
Authored By
testaf (nikars)
Feb 5 2019, 5:27 PM
Tags
  • BF Blender
Subscribers
Brecht Van Lommel (brecht)
Campbell Barton (campbellbarton)
Dalai Felinto (dfelinto)
testaf (nikars)
William Reynish (billreynish)

Description

Operating system:Win7
Graphics card:GTX260

Blender Version
Broken:
445433a6913f

Crash occurs after this steps:

  1. Add bone to scene
  2. Duplicate
  3. Select armature of duplicated bone

Video:

Revisions and Commits

rB Blender
D4344

Event Timeline

testaf (nikars) created this task.Feb 5 2019, 5:27 PM
Jacques Lucke (JacquesLucke) lowered the priority of this task from 90 to 50.Feb 5 2019, 6:00 PM
Jacques Lucke (JacquesLucke) renamed this task from Exeption Access Violation to Crash when accessing new Armature in the Outliner.Feb 5 2019, 6:39 PM
Jacques Lucke (JacquesLucke) updated the task description.
Dalai Felinto (dfelinto) added subscribers: William Reynish (billreynish), Campbell Barton (campbellbarton), Brecht Van Lommel (brecht), Dalai Felinto (dfelinto).Feb 5 2019, 7:38 PM

We have a similar issue with mesh objects. Basically the issue is that the active object is in a mode different from the data mode.

To reproduce the issue (although it doesn't crash there) you get two mesh objects, active object is in object mode, and we click on the mesh icon of a second object.
If you resort to the python console you can see that the active object is still in object mode, while the other object is in editmode.

To address this bug we need to understand what should happen when active object is in object mode and we select a data icon (e.g., ebone) for another object in the outliner.

I believe it should make the new object active, and switch to its edit (or pose) mode.
If shift was selected however the previously selected objects could all switch to the mode.

Following is the original conversation I had with @Brecht Van Lommel (brecht) about that:

What should happen when active object (A) is in object mode and we select a data icon (e.g., ebone) for another object (B) in the outliner? Right now it is a bit inconsistent, and leading to crashes

Option A: if both A and B objects are compatible with new suggested edit mode, they both switch to it
Option B: nothin happens (maybe object B is selected, but that's all, we stick to object mode)
Option C: we make object B as active, and switch to its edit (or pose) mode
Option D: dunno, let me focus on something else and go find someone else to bother ;)

For which we agreed that eventually we want outliner and viewport selection to be synced. So then option C would be the right choice. That's for regular click. for shift+click, option A instead.

@Campbell Barton (campbellbarton) @William Reynish (billreynish) any thoughts?

Dalai Felinto (dfelinto) added a comment.Feb 6 2019, 12:38 PM

I talked to @Campbell Barton (campbellbarton), his suggestion short-term is to not try to change modes unless current active mode is compatible. Something along the lines of B.

I ended up implementing the solution suggested by @Brecht Van Lommel (brecht) on D4344, pending review.

Dalai Felinto (dfelinto) added a comment.Feb 13 2019, 3:52 PM

For the records, I found an old report I created September last year (T56976) which is pretty much a duplicate of this one. It even has its own patch (D3750) though D4344 is more complete.
I will keep pestering my peers this time, so it doesn't fall into the oblivion void once again.

Dalai Felinto (dfelinto) changed the task status from Unknown Status to Resolved by committing rB2b7752fb0073: Fix T61210: Crash/inconsistency when clicking on obdata in outliner.Feb 15 2019, 6:53 PM
Dalai Felinto (dfelinto) added a commit: rB2b7752fb0073: Fix T61210: Crash/inconsistency when clicking on obdata in outliner.