[Bf-blender-cvs] [fc543da] asset-engine: Merge branch 'asset-experiments' into asset-engine

Bastien Montagne noreply at git.blender.org
Mon Apr 6 20:27:12 CEST 2015


Commit: fc543da8434189452d1d19a5171b13416dff12f0
Author: Bastien Montagne
Date:   Mon Apr 6 20:27:04 2015 +0200
Branches: asset-engine
https://developer.blender.org/rBfc543da8434189452d1d19a5171b13416dff12f0

Merge branch 'asset-experiments' into asset-engine

Conflicts:
	source/blender/editors/space_file/filelist.c

===================================================================



===================================================================

diff --cc source/blender/editors/space_file/filelist.c
index bd7b34e,c4389a2..2927ff7
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@@ -2575,59 -2529,11 +2575,60 @@@ static void filelist_readjob_update(voi
  		flrj->filelist->need_sorting = true;
  		flrj->filelist->need_filtering = true;
  		flrj->filelist->force_refresh = true;
 +
 +		for (entry = flrj->filelist->filelist.entries.first; entry; entry = entry->next) {
 +			BLI_assert(!BLI_listbase_is_empty(&entry->variants) && entry->nbr_variants);
 +			BLI_assert(entry->act_variant < entry->nbr_variants);
 +			if (!entry->name) {
 +				char buff[FILE_MAX_LIBEXTRA];
- 				entry->name = BLI_strdup(fileentry_uiname(flrj->filelist->filelist.root, entry, buff));
++				entry->name = BLI_strdup(fileentry_uiname(flrj->filelist->filelist.root,
++				                                          entry->relpath, entry->typeflag, buff));
 +			}
 +			if (!entry->entry) {
 +				FileDirEntryVariant *variant = BLI_findlink(&entry->variants, entry->act_variant);
 +				BLI_assert(!BLI_listbase_is_empty(&variant->revisions) && variant->nbr_revisions);
 +				BLI_assert(variant->act_revision < variant->nbr_revisions);
 +				entry->entry = BLI_findlink(&variant->revisions, variant->act_revision);
 +				BLI_assert(entry->entry);
 +			}
 +		}
 +
 +		*flrj->progress = ae->type->progress(ae, flrj->ae_job_id);
 +		if ((ae->type->status(ae, flrj->ae_job_id) & (AE_STATUS_RUNNING | AE_STATUS_VALID)) != (AE_STATUS_RUNNING | AE_STATUS_VALID)) {
 +			*flrj->stop = true;
 +		}
  	}
 +	else {
 +		FileListIntern *fl_intern = &flrj->filelist->filelist_intern;
 +		ListBase new_entries = {NULL};
 +		int nbr_entries, new_nbr_entries = 0;
 +
 +		BLI_movelisttolist(&new_entries, &fl_intern->entries);
 +		nbr_entries = flrj->filelist->filelist.nbr_entries;
 +
 +		BLI_mutex_lock(&flrj->lock);
 +
 +		if (flrj->tmp_filelist->filelist.nbr_entries) {
 +			/* We just move everything out of 'thread context' into final list. */
 +			new_nbr_entries = flrj->tmp_filelist->filelist.nbr_entries;
 +			BLI_movelisttolist(&new_entries, &flrj->tmp_filelist->filelist.entries);
 +			flrj->tmp_filelist->filelist.nbr_entries = 0;
 +		}
  
 -	/* if no new_nbr_entries, this is NOP */
 -	BLI_movelisttolist(&fl_intern->entries, &new_entries);
 -	flrj->filelist->filelist.nbr_entries = nbr_entries + new_nbr_entries;
 +		BLI_mutex_unlock(&flrj->lock);
 +
 +		if (new_nbr_entries) {
 +			filelist_clear(flrj->filelist);
 +
 +			flrj->filelist->need_sorting = true;
 +			flrj->filelist->need_filtering = true;
 +			flrj->filelist->force_refresh = true;
 +		}
 +
 +		/* if no new_nbr_entries, this is NOP */
 +		BLI_movelisttolist(&fl_intern->entries, &new_entries);
 +		flrj->filelist->filelist.nbr_entries = nbr_entries + new_nbr_entries;
 +	}
  }
  
  static void filelist_readjob_endjob(void *flrjv)




More information about the Bf-blender-cvs mailing list