Commit: 5eaa8739c5e0836dae0177106d8276199d4a5d0f
Author: Bastien Montagne
Date: Sat Dec 6 18:10:59 2014 +0100
Branches: asset-experiments
https://developer.blender.org/rB5eaa8739c5e0836dae0177106d8276199d4a5d0f
Moar fixes (re ;ostly filtering mixed lib/data and regular files).
===================================================================
M source/blender/editors/space_file/filelist.c
M source/blender/makesdna/DNA_space_types.h
===================================================================
diff --git a/source/blender/editors/space_file/filelist.c
b/source/blender/editors/space_file/filelist.c
index dd68271..89a81d1 100644
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@ -1031,6 +1031,9 @@ static void filelist_setfiletypes(struct FileList
*filelist)
file = filelist->filelist;
for (num = 0; num < filelist->numfiles; num++, file++) {
+ if (file->flags & BLENDERLIB) {
+ continue;
+ }
file->type = file->s.st_mode; /* restore the mess below */
#ifndef __APPLE__
/* Don't check extensions for directories, allow in OSX cause
bundles have extensions*/
@@ -1438,17 +1441,20 @@ static void filelist_from_library(struct FileList
*filelist, const bool add_pare
if (add_parent) {
filelist->filelist[nnames].relname = BLI_strdup("..");
filelist->filelist[nnames].type |= S_IFDIR;
+ filelist->filelist[nnames].flags |= BLENDERLIB;
}
for (i = 0, l = names; i < nnames; i++, l = l->next) {
const char *blockname = l->link;
+ struct direntry *file = &filelist->filelist[i];
- filelist->filelist[i].relname = BLI_strdup(blockname);
+ file->relname = BLI_strdup(blockname);
+ file->flags |= BLENDERLIB;
if (idcode) {
- filelist->filelist[i].type |= S_IFREG;
+ file->type |= S_IFREG;
}
else {
- filelist->filelist[i].type |= S_IFDIR;
+ file->type |= S_IFDIR;
}
}
diff --git a/source/blender/makesdna/DNA_space_types.h
b/source/blender/makesdna/DNA_space_types.h
index 1d5030b..565f67d 100644
--- a/source/blender/makesdna/DNA_space_types.h
+++ b/source/blender/makesdna/DNA_space_types.h
@@ -708,6 +708,8 @@ typedef enum eFileSel_File_Types {
COLLADAFILE = (1 << 13),
OPERATORFILE = (1 << 14), /* from filter_glob operator property
*/
APPLICATIONBUNDLE = (1 << 15),
+
+ BLENDERLIB = (1 << 31),
} eFileSel_File_Types;
/* Selection Flags in filesel: struct direntry, unsigned char selflag */
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs