Page MenuHome

Attempt to fix T34446 by carefully reusing existing LIB data, and reloading in a 'classical' way missing ones.
ClosedPublic

Authored by Bastien Montagne (mont29) on Aug 25 2015, 5:33 PM.

Details

Summary

Fixes undo/redo making disappear linked data, see comments in T34446 for details.

Notes:

  • This patch was tested with both own simple libs setup (including proxy and indirect linking).
  • This patch was tested with a Gooseberry production file (02_meet_victor) as well.
  • About Speed: memreadfile during undo ops not involving libs: 45ms with master code, 50ms with this patch (undo involving a complete libs re-reading is 1200 ms). Think this is acceptable.

Diff Detail

Repository
rB Blender
Branch
t34446-fix-attempt

Event Timeline

Bastien Montagne (mont29) retitled this revision from to Attempt to fix T34446 by carefully reusing existing LIB data, and reloading in a 'classical' way missing ones..
Bastien Montagne (mont29) updated this object.
  • Final fix - actually solution was simple, just needed to add old->new address to fd->libmap…

Fixed bugs (crashes) with indirect libs & co...

  • Some cleanup...
  • Fix broken undo/redo with nasty indirect-linked libs.
  • Cleanup.
  • Fix bad usage of fd->mainlist, some more cleanup.
  • Looks like we do not read back lib bheads here in the end. :)

Patch sounds good for master to me now...

Updated against latest master.

This revision was automatically updated to reflect the committed changes.