Revision a544582 by Bastien Montagne (id-ensure-unique-memory-address, libquery-handle-ui-pointers, readfile-rework-refcount-handling, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 10, 2020, 17:47 (GMT) |
Merge commit 'ddad044cfe13' into libquery-handle-ui-pointers |
Revision a8bc14b by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 10, 2020, 17:23 (GMT) |
Fix after merge of master. |
Revision bbe3b57 by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 10, 2020, 17:21 (GMT) |
Merge branch 'master' into undo-experiments |
Revision 633951f by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 10, 2020, 17:13 (GMT) |
Merge commit 'ddad044cfe13' into undo-experiments |
Revision 891fadc by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 7, 2020, 15:14 (GMT) |
Merge branch 'libquery-handle-ui-pointers' into undo-experiments |
Revision f4e17b2 by Bastien Montagne (id-ensure-unique-memory-address, libquery-handle-ui-pointers, readfile-rework-refcount-handling, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 7, 2020, 15:13 (GMT) |
libquery: add optional handling of 'UI' ID pointers. Handling those through different ways /might/ be needed sometimes, but in most case this is just a nest of issues, since you can easily forget to take them into account. Note that this should be a 'non-functional' change, as this new behavior is not used anywhere yet. |
Revision 6fbfb83 by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 7, 2020, 10:21 (GMT) |
Merge branch 'master' into undo-experiments |
Revision 1c52dab by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 6, 2020, 18:04 (GMT) |
Merge branch 'master' into undo-experiments |
Revision 03b15f5 by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 6, 2020, 15:51 (GMT) |
Merge branch 'readfile_factorize_common_id_processing' into undo-experiments |
Revision 620d247 by Bastien Montagne (readfile_factorize_common_id_processing, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 6, 2020, 15:51 (GMT) |
Merge branch 'master' into readfile_factorize_common_id_processing |
Revision ef12c83 by Bastien Montagne (readfile_factorize_common_id_processing, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 6, 2020, 15:29 (GMT) |
Readfile: refactor/factorize more handling of common ID data. - Move handling of private ID data (nodetree and master_collection) under generic ID code. This shortens code a bit, but mostly avoids having to modify all type-specific callback functions if/when we have to add generic processing to IDs there. - Seriously factorize `expand_xxx` area, in the same way we were already doing in `direct_link_xxx` and `lib_link_xxx` areas. Differential Revision: https://developer.blender.org/D6764 |
Revision ba02dd4 by Bastien Montagne (readfile_factorize_common_id_processing, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 6, 2020, 15:24 (GMT) |
NodeTree: Add access to the address of an ID's nodetree pointer. |
Revision 54004f5 by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 6, 2020, 13:08 (GMT) |
Merge branch 'master' into undo-experiments |
Revision ae46232 by Bastien Montagne (id-ensure-unique-memory-address, readfile-rework-refcount-handling, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 5, 2020, 16:52 (GMT) |
Better handling of usages of usercount increment in readfile liblink. Some places could/should still need proper ID refcounting in liblink: * UI data (spaces) - although this should be strictly 'user one' only... * Deprectaed data/pointers which are not handled by libquery code. Not sure whether IPO pointers really need usercount actually... |
Revision ea0dc96 by Bastien Montagne (id-ensure-unique-memory-address, readfile-rework-refcount-handling, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 5, 2020, 16:04 (GMT) |
Merge branch 'master' into readfile-rework-refcount-handling Conflicts: source/blender/blenloader/intern/readfile.c |
Revision 8c75037 by Bastien Montagne (id-ensure-unique-memory-address, readfile-rework-refcount-handling, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 3, 2020, 09:52 (GMT) |
readfile: Quick experiment with refcounting moved to libquery. Having that extra ID users handling at readfile level, besides generic one ensured by libquery, has been something bothering me for a long time (had to fix my share of bugs due to mismatches between those two areas). Further more, work on undo speedup will require even more complex ID refcount management if we want to keep it in readfile.c area. So idea is instead to generalize what we did for linked data already when undoing: recompute properly usercount numbers after liblink step, for all IDs. Note that extra time required here is neglectable in a whole .blend file reading (few extra milliseconds when loading a full production scene e.g.). |
Revision 2d0e6ca by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 1, 2020, 18:43 (GMT) |
Merge branch 'master' into undo-experiments |
Revision 9829a3c by Bastien Montagne (id-ensure-unique-memory-address, readfile-rework-refcount-handling, undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) February 1, 2020, 18:43 (GMT) |
Refactor readfile's liblink code. Liblink specific ID type function was so far running a loop over all IDs of relevant type, unlike almost any other 'ID-callback-like' functions in Blender, which usually let the looping controll to calling code. The latter approach is more convinient when one want to add generic (i.e. type-agnostic) code, since it typically only has to change code in one place (caller function) instead of tens of places (all the callback functions). This commit also changes/sanitizes a few things that had nothing to do in main liblink code, like mesh conversion from tessfaces to polys (which can be done in after-linking versionning code), or scenes' cycles detection/check regarding background 'set' scenes. Differential Revision: https://developer.blender.org/D6727 |
Revision db6f3eb by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) January 31, 2020, 14:55 (GMT) |
undoexp: cleanup: move/tweak assert re undo direction value. |
Revision b55f656 by Bastien Montagne (undo-experiments, undo-experiments-swap-reread-datablocks, uuid-undo-experiments, uuid-undo-experiments-swap-reread-datablocks) January 31, 2020, 13:47 (GMT) |
Merge branch 'master' into undo-experiments |
|