Revision ac797f0 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) September 21, 2015, 15:42 (GMT) |
Fix broken multi-lib linking, and remove Main locking around core linking code for now. We need to append to linklist, or our library indices would be reversed compared to lib list... As for locking, we need reentrant one here if we want to use it. :( |
Revision c18849b by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) September 21, 2015, 14:35 (GMT) |
Lock bmain around core part of linking code now, this is much safer imho! This also means we need to ensure no code called from there tries to lock again bmain (no reentrant spinlock, arg :/). |
Revision 8cbc05c by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 21, 2015, 14:15 (GMT) |
Add reload lib code, and various fixes (some to be backported to other working branches actually). |
Revision 99008d4 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 21, 2015, 13:11 (GMT) |
Merge branch 'lib-link-rework-temp' into id-remap |
Revision d02aa8c by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 21, 2015, 13:11 (GMT) |
Merge branch 'missing-libs' into id-remap |
Revision 0e62a00 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 21, 2015, 13:11 (GMT) |
Merge branch 'master' into id-remap |
Revision 33b7772 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, missing-libs) September 21, 2015, 13:10 (GMT) |
Merge branch 'master' into missing-libs |
Revision f7a3ead by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) September 21, 2015, 13:10 (GMT) |
Merge branch 'master' into lib-link-rework-temp |
Revision c7d931b by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 20, 2015, 13:46 (GMT) |
Merge branch 'lib-link-rework-temp' into id-remap |
Revision 2e564ce by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 20, 2015, 13:46 (GMT) |
Merge branch 'missing-libs' into id-remap |
Revision 1d4e36a by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) September 20, 2015, 13:41 (GMT) |
Merge branch 'master' into lib-link-rework-temp |
Revision bcbbee4 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, missing-libs) September 20, 2015, 12:54 (GMT) |
Merge branch 'master' into missing-libs |
Revision f5b0c53 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 19, 2015, 18:03 (GMT) |
Relocate: remove old lib datablocks after relocate, if no ID comes from it anymore. |
Revision aaab73d by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 19, 2015, 17:56 (GMT) |
Attempt to handle correctly LIB_EXTERN vs. LIB_INDIRECT ID flags. This is far from simple, and most likely not yet fully working, but we have a base... |
Revision 38670bc by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 19, 2015, 16:26 (GMT) |
Some fixes, add basic wrapper code needed for reload feature (not yet implemented). |
Revision 98efbb3 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 18, 2015, 20:42 (GMT) |
Merge branch 'lib-link-rework-temp' into id-remap Also, fix some issues in previous code. |
Revision 5ac9844 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) September 18, 2015, 20:27 (GMT) |
Some naming cleanup. |
Revision 856ef06 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) September 18, 2015, 20:22 (GMT) |
Rework a bit new liblink code, to use our beloved memarena instead of ugly pile of malloc. Performances are not an issue at all here, but it makes code slightly simpler, avoids a loop over ghash of libs, avoids some potential mem fragmentation, and will be easier with lib relocate code too in future... |
Revision f011cdc by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 18, 2015, 19:31 (GMT) |
Consider proxy objects as 'linked' ones when it comes to ID remapping. Reason is, on next fileread, proxy will be assigned with its target's data again... Note that this may not be true about all its datablocks pointers - but proxy objects are really brittle in current code anyway, they could use a serious work as well. |
Revision 32ea612 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) September 18, 2015, 16:09 (GMT) |
Moar cleanup, some fixes towards sanier handling of remap & indirect data... Proxy are still not correctly handled here though. |
|