[Bf-blender-cvs] [68bab33] asset-engine: More fixes...
Bastien Montagne
noreply at git.blender.org
Tue Apr 14 16:59:58 CEST 2015
Commit: 68bab334e000aa078795115e3549fa481aa83f85
Author: Bastien Montagne
Date: Tue Apr 14 16:58:38 2015 +0200
Branches: asset-engine
https://developer.blender.org/rB68bab334e000aa078795115e3549fa481aa83f85
More fixes...
Amber engine seems to be running nice again in new system, pfew!
===================================================================
M release/scripts/startup/bl_operators/amber.py
M source/blender/blenkernel/intern/asset.c
M source/blender/editors/space_file/filelist.c
===================================================================
diff --git a/release/scripts/startup/bl_operators/amber.py b/release/scripts/startup/bl_operators/amber.py
index 9b6cfb4..0955e67 100644
--- a/release/scripts/startup/bl_operators/amber.py
+++ b/release/scripts/startup/bl_operators/amber.py
@@ -267,6 +267,7 @@ class AssetEngineAmber(AssetEngine):
if job.root != entries.root_path:
self.reset()
self.jobs[job_id] = AmberJobList(self.executor, job_id, entries.root_path)
+ self.root = entries.root_path
else:
job.update(self.repo, self.dirs, self.uuids)
elif self.root != entries.root_path:
@@ -274,6 +275,7 @@ class AssetEngineAmber(AssetEngine):
job_id = self.job_uuid
self.job_uuid += 1
self.jobs[job_id] = AmberJobList(self.executor, job_id, entries.root_path)
+ self.root = entries.root_path
if self.repo:
entries.nbr_entries = len(self.repo["entries"])
self.tags_source[:] = sorted(self.repo["tags"].items(), key=lambda i: i[1], reverse=True)
@@ -287,7 +289,7 @@ class AssetEngineAmber(AssetEngine):
root_path = None
for uuid in uuids.uuids:
root, file_type, blen_type, vuuids = self.uuids[uuid.uuid_asset]
- ruuids = vuuids[uuid.uuid_variant]
+ var, ruuids = vuuids[uuid.uuid_variant]
path_archive, path = ruuids[uuid.uuid_revision]
if root_path is None:
root_path = root
@@ -298,7 +300,8 @@ class AssetEngineAmber(AssetEngine):
entry.blender_type = blen_type
# archive part not yet implemented!
entry.relpath = path
- entries.root_path = root_path
+ if root_path is not None:
+ entries.root_path = root_path
return True
def sort_filter(self, use_sort, use_filter, filter_glob, filter_search, entries):
@@ -313,11 +316,13 @@ class AssetEngineAmber(AssetEngine):
for path, size, timestamp, uuid in self.dirs:
if filter_search and filter_search not in path:
continue
+ if path.startswith(".") and not path.startswith(".."):
+ continue
self.sortedfiltered.append((path, size, timestamp, uuid))
use_sort = True
entries.nbr_entries_filtered = len(self.sortedfiltered)
if use_sort:
- self.sortedfiltered.sort(key=lambda e: e[0])
+ self.sortedfiltered.sort(key=lambda e: e[0].lower())
return True
return False
diff --git a/source/blender/blenkernel/intern/asset.c b/source/blender/blenkernel/intern/asset.c
index 5c3fe3c..0768cbe 100644
--- a/source/blender/blenkernel/intern/asset.c
+++ b/source/blender/blenkernel/intern/asset.c
@@ -167,8 +167,6 @@ void BKE_asset_engine_load_pre(AssetEngine *engine, FileDirEntryArr *r_entries)
memcpy(uuid->uuid_revision, en->entry->uuid, sizeof(uuid->uuid_revision));
}
- BKE_filedir_entryarr_clear(r_entries);
-
if (!engine->type->load_pre(engine, uuids, r_entries)) {
/* If load_pre returns false (i.e. fails), clear all paths! */
/* TODO: report!!! */
diff --git a/source/blender/editors/space_file/filelist.c b/source/blender/editors/space_file/filelist.c
index 5abb169..2ba313b 100644
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@ -1572,14 +1572,15 @@ static bool filelist_file_cache_block_create(struct FileList *filelist, const in
FileListEntryCache *cache = &filelist->filelist_cache;
if (filelist->ae) {
- FileDirEntry *tmp_entry;
+ FileDirEntry *entry;
int i;
- tmp_entry = filelist_file_create_entries_block(filelist, start_index, size);
+ entry = filelist_file_create_entries_block(filelist, start_index, size);
- for (i = 0; i < size; i++, cursor++, tmp_entry = tmp_entry->next) {
- printf("%d, %p\n", i, tmp_entry);
- cache->block_entries[cursor] = tmp_entry;
+ for (i = 0; i < size; i++, cursor++, entry = entry->next) {
+ printf("%d, %p\n", i, entry);
+ cache->block_entries[cursor] = entry;
+ BLI_ghash_insert(cache->uuids, entry->uuid, entry);
}
return true;
}
More information about the Bf-blender-cvs
mailing list