File Browser is unusable on Windows Machines #43684

Closed
opened 2015-02-16 07:05:47 +01:00 by Carlo Andreacchio · 49 comments

System Information
Windows 7 x64, gtx 580

Blender Version
Broken: 2.73-c439d14
Worked: 2.73-4ae6d58

Short description of error
File browser (file open / file save) is unusable under windows 7 x64.

Exact steps for others to reproduce the error

  1. Go onto a windows computer
  2. try saving as
  3. wait 10-15 seconds for it to load the current directory
  4. try changing directories and notice you get 1 frame update every 5 seconds (hover highlight and what not), makes changing directories / which file to load very hard.
**System Information** Windows 7 x64, gtx 580 **Blender Version** Broken: 2.73-c439d14 Worked: 2.73-4ae6d58 **Short description of error** File browser (file open / file save) is unusable under windows 7 x64. **Exact steps for others to reproduce the error** 1) Go onto a windows computer 2) try saving as 3) wait 10-15 seconds for it to load the current directory 4) try changing directories and notice you get 1 frame update every 5 seconds (hover highlight and what not), makes changing directories / which file to load very hard.

#43688 was marked as duplicate of this issue

#43688 was marked as duplicate of this issue

Changed status to: 'Open'

Changed status to: 'Open'

Added subscriber: @candreacchio

Added subscriber: @candreacchio
Bastien Montagne self-assigned this 2015-02-16 12:17:42 +01:00

Added subscriber: @you.le

Added subscriber: @you.le

Did some changes in this area yesterday… would not have expected anything new (was mostly cleaning), but looks like windows thinks differently once again. :/

Did some changes in this area yesterday… would not have expected anything new (was mostly cleaning), but looks like windows thinks differently once again. :/

Added subscriber: @lamoot

Added subscriber: @lamoot

I tested it on my machine and can't reproduce the problem, everything works fine and is responsive in the file browser. I used the same blender-2.73-c439d14-win64 build, also on Win 7 64, mobility radeon 5650.

Also, changing interface draw methods didn't change anything, it was still responsive.

I tested it on my machine and can't reproduce the problem, everything works fine and is responsive in the file browser. I used the same blender-2.73-c439d14-win64 build, also on Win 7 64, mobility radeon 5650. Also, changing interface draw methods didn't change anything, it was still responsive.

@lamoot thanks for the feedback.

This report really is odd, but was reported separately by two people, so there must be something fishy going on here. Checking currently on my windows VM (building blender on win takes ages…), could also be related to recent OpenGL commit (and drivers, of course). ;)

@lamoot thanks for the feedback. This report really is odd, but was reported separately by two people, so there must be something fishy going on here. Checking currently on my windows VM (building blender on win takes ages…), could also be related to recent OpenGL commit (and drivers, of course). ;)

Yeah… cannot confirm that here either (VM, so using softwaregl)…

@candreacchio & @you.le can you please:

  • Ensure both your OS and drivers are fully up-to-date.
  • Ensure your GPU driver supports at least OpenGL 1.4.
  • Try to start Blender in factory settings (--factory-startup commandline option) (this will ensure whether this is a userpref or addon issue or not).
  • Try to tweak OGL settings in UserPreferences, System tab.
  • Attach here the report generated by Help -> System Info.
  • Try to place this dll next to your blender.exe (software OGL, will be slow, but will show whether this is a driver issue or not).
Yeah… cannot confirm that here either (VM, so using softwaregl)… @candreacchio & @you.le can you please: * Ensure both your OS and drivers are fully up-to-date. * Ensure your GPU driver supports at least OpenGL 1.4. * Try to start Blender in factory settings (`--factory-startup` commandline option) (this will ensure whether this is a userpref or addon issue or not). * Try to tweak OGL settings in UserPreferences, System tab. * Attach here the report generated by Help -> System Info. * Try to place [this dll](http://download.blender.org/ftp/sergey/softwaregl/win64/opengl32.dll) next to your blender.exe (software OGL, will be slow, but will show whether this is a driver issue or not).

No problem:

  • OS and drivers up to date
  • GPU driver supports openGL 1.4
  • No change when running factory settings
  • I tried to tweak some settings in user>preferences> system without success
  • System infos: http://www.mediafire.com/view/g7ccuwo38ovt7qf/system-info.txt
  • I placed opengl32.dll in blender directory... No change except Blender is slower and interface very slow

Don't hesitate to ask me to test some .diff if you have any idea of what can cause the bug and thank you very much for trying to solve it!

No problem: - OS and drivers up to date - GPU driver supports openGL 1.4 - No change when running factory settings - I tried to tweak some settings in user>preferences> system without success - System infos: http://www.mediafire.com/view/g7ccuwo38ovt7qf/system-info.txt - I placed opengl32.dll in blender directory... No change except Blender is slower and interface very slow Don't hesitate to ask me to test some .diff if you have any idea of what can cause the bug and thank you very much for trying to solve it!

Thanks. If you are building Blender yourself (and hence have a local git repo of its source), you may want to try to revert those two commits, and see whether it fixes the issue:
2e9105cc96

  f1ee11fcca20ce1fb7db97a71e7e345c6faad69a

Those were switching from plain C malloc/realloc/free to our own guarded versions (used nearly everywhere in Blender code, MEM_xxx). I would not expect for sure this to be the cause of the issue, but you never know…

Otherwise, you could also just git bisect between the known good and bad revisions, to pinpoint which change actually caused the issue.

Thanks. If you are building Blender yourself (and hence have a local git repo of its source), you may want to try to revert those two commits, and see whether it fixes the issue: 2e9105cc964a157458663fa8102601e3d6ac90e3 ``` f1ee11fcca20ce1fb7db97a71e7e345c6faad69a ``` Those were switching from plain C malloc/realloc/free to our own guarded versions (used nearly everywhere in Blender code, MEM_xxx). I would not expect for sure this to be the cause of the issue, but you never know… Otherwise, you could also just [git bisect](http://git-scm.com/book/en/v2/Git-Tools-Debugging-with-Git#Binary-Search) between the known good and bad revisions, to pinpoint which change actually caused the issue.

I already made bisect: http://www.mediafire.com/view/w8thde9z7drbmif/bisectLagBlender.txt

This is since this commit: b9ffd70960

the bug appeared...

I just wanted to report the bug... But my own build 2.73.6 works fine! :) Thanks. I'll try to revert the commits you indicated to me to see what happens.

I already made bisect: http://www.mediafire.com/view/w8thde9z7drbmif/bisectLagBlender.txt This is since this commit: https://git.blender.org/gitweb/gitweb.cgi/blender.git/commit/b9ffd70960c5047a003fadf2363bfed50095d79b the bug appeared... I just wanted to report the bug... But my own build 2.73.6 works fine! :) Thanks. I'll try to revert the commits you indicated to me to see what happens.

Oh… then I know what’s the issue - you must have some invalid (as in, not reachable) bookmarks. Would look like running BLI_is_dir from draw loop is not a good idea. :/
Will try to think of a better solution.

Oh… then I know what’s the issue - you must have some invalid (as in, not reachable) bookmarks. Would look like running BLI_is_dir from draw loop is not a good idea. :/ Will try to think of a better solution.

This issue was referenced by 0dfdca6d13

This issue was referenced by 0dfdca6d132dd0b26307ab0c35be87f78da98022

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'

Closed by commit 0dfdca6d13.

Closed by commit 0dfdca6d13.

That commit should fix the issue, can you please confirm this?

That commit should fix the issue, can you please confirm this?

Sorry, that does not work for me.

Compilation warnings: http://www.mediafire.com/view/f6mwlefcqdfzbyn/warnings.txt

When I revert your commit b9ffd70960 it works.

I make a new try... But I think it won't change.

Sorry, that does not work for me. Compilation warnings: http://www.mediafire.com/view/f6mwlefcqdfzbyn/warnings.txt When I revert your commit b9ffd70960c5047a003fadf2363bfed50095d79b it works. I make a new try... But I think it won't change.

Will confirm once buildbot updates

Will confirm once buildbot updates

After another test, I realized that your last changes solved a part of the bug:

  • When you click on the open button, there is the same lag to reach the selection file menu.
  • But when you are in the selection file menu, there are no more lag.

Hope this can help!

After another test, I realized that your last changes solved a part of the bug: - When you click on the open button, there is the same lag to reach the selection file menu. - But when you are in the selection file menu, there are no more lag. Hope this can help!

Added subscriber: @mont29

Added subscriber: @mont29

@mont29 , we have updated based off the buildbot (691cb61) and performance has significantly improved whilst navigating between folders & files... The only slowdown now occurs when the file dialogue is opening... (Pressing Ctrl - O will lock up blender for 5-10 seconds)

I have tried resetting the preferences and that does not help with the lockup. Nor does removing mounted network drives / removing network drive shortcuts

@mont29 , we have updated based off the buildbot (691cb61) and performance has significantly improved whilst navigating between folders & files... The only slowdown now occurs when the file dialogue is opening... (Pressing Ctrl - O will lock up blender for 5-10 seconds) I have tried resetting the preferences and that does not help with the lockup. Nor does removing mounted network drives / removing network drive shortcuts

I can confirm that this slowdown happens for all File Browser dialogues (open / save as / link / append / changing the 3dview to filebrowser manually).

I can confirm that this slowdown happens for all File Browser dialogues (open / save as / link / append / changing the 3dview to filebrowser manually).

Changed status from 'Resolved' to: 'Open'

Changed status from 'Resolved' to: 'Open'

Yes… that what I would have expected… I’d like to know how much entries you have in your bookmarks, and if many of them are pointing to network FS (I bet there are :P).

No, issue here comes from calling BLI_is_dir() on all bookmarks' paths, to detect the one which are available and the one which are currently invalid. Previously, it was run on each redraw, which was stupid from my side. Now, I made them run only on blender startup and when you open a file browser. I could just keep it to run only once on startup, but then it would not update if you e.g. mount a new drive or whatever… :/

Yes… that what I would have expected… I’d like to know how much entries you have in your bookmarks, and if many of them are pointing to network FS (I bet there are :P). No, issue here comes from calling BLI_is_dir() on all bookmarks' paths, to detect the one which are available and the one which are currently invalid. Previously, it was run on each redraw, which was stupid from my side. Now, I made them run only on blender startup and when you open a file browser. I could just keep it to run only once on startup, but then it would not update if you e.g. mount a new drive or whatever… :/

I tried removing all blender bookmarks actually... even wiped my settings and tried it again, still lagged out. Tried unmounting my network drives and removing network bookmarks from the filebrowser, and that lagged out still.

I tried removing all blender bookmarks actually... even wiped my settings and tried it again, still lagged out. Tried unmounting my network drives and removing network bookmarks from the filebrowser, and that lagged out still.

Note Campbell did another (unrelated) fix regarding filebrowser and lag, 8cb4011220, is it in your tested builds?

Note Campbell did another (unrelated) fix regarding filebrowser and lag, 8cb4011220, is it in your tested builds?

I was using build 691cb61 from the buildbot, so yes?

I was using build 691cb61 from the buildbot, so yes?

I just updated my Blender sources and made a new build. Same issue. In my system bookmarks, I've only Desktop and Documents. I don't know what exactly is a "bookmark"... In the help menu, there are several internet links "bookmarks" (python API reference etc...). Thank you mont29 for trying to resolve the bug!

I just updated my Blender sources and made a new build. Same issue. In my system bookmarks, I've only Desktop and Documents. I don't know what exactly is a "bookmark"... In the help menu, there are several internet links "bookmarks" (python API reference etc...). Thank you mont29 for trying to resolve the bug!

I have a drive A: in bookmarks which does not exists (my hard drives are C: , D: , and cdroms E: , F: ) . When I click on A: , Blender crashes sometimes. I don't know if it is related to the bug...

I have a drive A: in bookmarks which does not exists (my hard drives are C: , D: , and cdroms E: , F: ) . When I click on A: , Blender crashes sometimes. I don't know if it is related to the bug...

Grmll… trying to fix that without being able to reproduce it is rather hairy… Can you please apply that patch, run Blender, open once or two times the filebrowser, and paste here what it prints in console?

P201: #43684

diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c
index f717573..d1a0ce6 100644
--- a/source/blender/editors/space_file/fsmenu.c
+++ b/source/blender/editors/space_file/fsmenu.c
@@ -216,14 +216,21 @@ void ED_fsmenu_entry_set_name(struct FSMenuEntry *fsentry, const char *name)
 	}
 }
 
+#include "PIL_time_utildefines.h"
 void fsmenu_entry_refresh_valid(struct FSMenuEntry *fsentry)
 {
+	printf("\tvalidate %s:    ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>");
+	TIMEIT_START(validate_entry);
+
 	if (fsentry->path && fsentry->path[0]) {
 		fsentry->valid = BLI_is_dir(fsentry->path);
 	}
 	else {
 		fsentry->valid = false;
 	}
+
+	printf("\tvalidate %s:    ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>");
+	TIMEIT_END(validate_entry);
 }
 
 short fsmenu_can_save(struct FSMenu *fsmenu, FSMenuCategory category, int idx)
@@ -656,12 +663,18 @@ void fsmenu_refresh_bookmarks_status(struct FSMenu *fsmenu)
 	int categories- [ ] = {FS_CATEGORY_SYSTEM, FS_CATEGORY_SYSTEM_BOOKMARKS, FS_CATEGORY_BOOKMARKS, FS_CATEGORY_RECENT};
 	int i;
 
+	printf("%s:    ", __func__);
+	TIMEIT_START(validate_fsmenu);
+
 	for (i = sizeof(categories) / sizeof(*categories); i--; ) {
 		FSMenuEntry *fsm_iter = ED_fsmenu_get_category(fsmenu, categories[i]);
 		for ( ; fsm_iter; fsm_iter = fsm_iter->next) {
 			fsmenu_entry_refresh_valid(fsm_iter);
 		}
 	}
+
+	printf("%s:    ", __func__);
+	TIMEIT_END(validate_fsmenu);
 }
 
 void fsmenu_free(void)

Grmll… trying to fix that without being able to reproduce it is rather hairy… Can you please apply that patch, run Blender, open once or two times the filebrowser, and paste here what it prints in console? [P201: #43684](https://archive.blender.org/developer/P201.txt) ``` diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c index f717573..d1a0ce6 100644 --- a/source/blender/editors/space_file/fsmenu.c +++ b/source/blender/editors/space_file/fsmenu.c @@ -216,14 +216,21 @@ void ED_fsmenu_entry_set_name(struct FSMenuEntry *fsentry, const char *name) } } +#include "PIL_time_utildefines.h" void fsmenu_entry_refresh_valid(struct FSMenuEntry *fsentry) { + printf("\tvalidate %s: ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>"); + TIMEIT_START(validate_entry); + if (fsentry->path && fsentry->path[0]) { fsentry->valid = BLI_is_dir(fsentry->path); } else { fsentry->valid = false; } + + printf("\tvalidate %s: ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>"); + TIMEIT_END(validate_entry); } short fsmenu_can_save(struct FSMenu *fsmenu, FSMenuCategory category, int idx) @@ -656,12 +663,18 @@ void fsmenu_refresh_bookmarks_status(struct FSMenu *fsmenu) int categories- [ ] = {FS_CATEGORY_SYSTEM, FS_CATEGORY_SYSTEM_BOOKMARKS, FS_CATEGORY_BOOKMARKS, FS_CATEGORY_RECENT}; int i; + printf("%s: ", __func__); + TIMEIT_START(validate_fsmenu); + for (i = sizeof(categories) / sizeof(*categories); i--; ) { FSMenuEntry *fsm_iter = ED_fsmenu_get_category(fsmenu, categories[i]); for ( ; fsm_iter; fsm_iter = fsm_iter->next) { fsmenu_entry_refresh_valid(fsm_iter); } } + + printf("%s: ", __func__); + TIMEIT_END(validate_fsmenu); } void fsmenu_free(void) ```

Hello! No problem: http://www.mediafire.com/view/8ly6c56s3l0os9p/Nouveau_document_texte.txt

Hope this helps! Bon courage!

Hello! No problem: http://www.mediafire.com/view/8ly6c56s3l0os9p/Nouveau_document_texte.txt Hope this helps! Bon courage!

It seems there is a problem with A:, no?

validate A:: time start (validate_entry): D:\Compilation\Blender\No
uveau dossier\source\blender\editors\space_file\fsmenu.c:223

      validate A:\:    time end   (validate_entry): 5.546460
It seems there is a problem with A:, no? validate A:\: time start (validate_entry): D:\Compilation\Blender\No uveau dossier\source\blender\editors\space_file\fsmenu.c:223 ``` validate A:\: time end (validate_entry): 5.546460

That’s the least we can say… F...ing Windows! A:\ and B:\ are for (very!) old floppy stuff, think I will just explicitly exclude them from the check for now… But win could be smart enough not to block five seconds for a mere stat call over such stuff…

That’s the least we can say… F...ing Windows! A:\ and B:\ are for (very!) old floppy stuff, think I will just explicitly exclude them from the check for now… But win could be smart enough not to block **five** seconds for a mere stat call over such stuff…

Can you confirm me this patch fixes the issue for you?

P202: #43684

diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c
index f717573..12ba9db 100644
--- a/source/blender/editors/space_file/fsmenu.c
+++ b/source/blender/editors/space_file/fsmenu.c
@@ -216,14 +216,35 @@ void ED_fsmenu_entry_set_name(struct FSMenuEntry *fsentry, const char *name)
 	}
 }
 
+#include "PIL_time_utildefines.h"
 void fsmenu_entry_refresh_valid(struct FSMenuEntry *fsentry)
 {
+	printf("\tvalidate %s:    ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>");
+	TIMEIT_START(validate_entry);
+
 	if (fsentry->path && fsentry->path[0]) {
+		/* XXX Special case, always consider those as valid.
+		 *     Thanks to Windows, which can spend five seconds to perform a mere stat() call on those paths...
+		 *     See #43684.
+		 */
+		const char *exceptions- [ ] = {"A:\\", "B:\\", NULL};
+		const size_t exceptions_len- [ ] = {strlen(exceptions- [x]), strlen(exceptions- [x]), 0};
+		int i;
+
+		for (i = 0; exceptions- [x]; i++) {
+			if (STREQLEN(fsentry->path, exceptions- [x], exceptions_len[i])) {
+				fsentry->valid = true;
+				return;
+			}
+		}
 		fsentry->valid = BLI_is_dir(fsentry->path);
 	}
 	else {
 		fsentry->valid = false;
 	}
+
+	printf("\tvalidate %s:    ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>");
+	TIMEIT_END(validate_entry);
 }
 
 short fsmenu_can_save(struct FSMenu *fsmenu, FSMenuCategory category, int idx)
@@ -656,12 +677,18 @@ void fsmenu_refresh_bookmarks_status(struct FSMenu *fsmenu)
 	int categories- [ ] = {FS_CATEGORY_SYSTEM, FS_CATEGORY_SYSTEM_BOOKMARKS, FS_CATEGORY_BOOKMARKS, FS_CATEGORY_RECENT};
 	int i;
 
+	printf("%s:    ", __func__);
+	TIMEIT_START(validate_fsmenu);
+
 	for (i = sizeof(categories) / sizeof(*categories); i--; ) {
 		FSMenuEntry *fsm_iter = ED_fsmenu_get_category(fsmenu, categories[i]);
 		for ( ; fsm_iter; fsm_iter = fsm_iter->next) {
 			fsmenu_entry_refresh_valid(fsm_iter);
 		}
 	}
+
+	printf("%s:    ", __func__);
+	TIMEIT_END(validate_fsmenu);
 }
 
 void fsmenu_free(void)

Can you confirm me this patch fixes the issue for you? [P202: #43684](https://archive.blender.org/developer/P202.txt) ``` diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c index f717573..12ba9db 100644 --- a/source/blender/editors/space_file/fsmenu.c +++ b/source/blender/editors/space_file/fsmenu.c @@ -216,14 +216,35 @@ void ED_fsmenu_entry_set_name(struct FSMenuEntry *fsentry, const char *name) } } +#include "PIL_time_utildefines.h" void fsmenu_entry_refresh_valid(struct FSMenuEntry *fsentry) { + printf("\tvalidate %s: ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>"); + TIMEIT_START(validate_entry); + if (fsentry->path && fsentry->path[0]) { + /* XXX Special case, always consider those as valid. + * Thanks to Windows, which can spend five seconds to perform a mere stat() call on those paths... + * See #43684. + */ + const char *exceptions- [ ] = {"A:\\", "B:\\", NULL}; + const size_t exceptions_len- [ ] = {strlen(exceptions- [x]), strlen(exceptions- [x]), 0}; + int i; + + for (i = 0; exceptions- [x]; i++) { + if (STREQLEN(fsentry->path, exceptions- [x], exceptions_len[i])) { + fsentry->valid = true; + return; + } + } fsentry->valid = BLI_is_dir(fsentry->path); } else { fsentry->valid = false; } + + printf("\tvalidate %s: ", (fsentry->path && fsentry->path- [x]) ? fsentry->path : "<empty bookmarks>"); + TIMEIT_END(validate_entry); } short fsmenu_can_save(struct FSMenu *fsmenu, FSMenuCategory category, int idx) @@ -656,12 +677,18 @@ void fsmenu_refresh_bookmarks_status(struct FSMenu *fsmenu) int categories- [ ] = {FS_CATEGORY_SYSTEM, FS_CATEGORY_SYSTEM_BOOKMARKS, FS_CATEGORY_BOOKMARKS, FS_CATEGORY_RECENT}; int i; + printf("%s: ", __func__); + TIMEIT_START(validate_fsmenu); + for (i = sizeof(categories) / sizeof(*categories); i--; ) { FSMenuEntry *fsm_iter = ED_fsmenu_get_category(fsmenu, categories[i]); for ( ; fsm_iter; fsm_iter = fsm_iter->next) { fsmenu_entry_refresh_valid(fsm_iter); } } + + printf("%s: ", __func__); + TIMEIT_END(validate_fsmenu); } void fsmenu_free(void) ```

Yes! It works again! Thanks very much! And thank you for all your works for Blender!
Bonne fin d'après-midi!

Yes! It works again! Thanks very much! And thank you for all your works for Blender! Bonne fin d'après-midi!

Cool, committing then, then again for the tests!

(Et bonne soirée :) ).

Cool, committing then, then again for the tests! (Et bonne soirée :) ).

This issue was referenced by 21a2b73a1e

This issue was referenced by 21a2b73a1e0eff0f48fe93161779bd71f8f141f7

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'

Closed by commit 21a2b73a1e.

Closed by commit 21a2b73a1e.

This issue was referenced by e089b0e911

This issue was referenced by e089b0e91162fb0932bdb88e9905cdd9fb6b94dd

Oops! Sorry it's me again. I just tested you commit. Compilation failed. I propose this patch:

foreach ($list as $item) {

diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c
index 6b4ee31..242464c 100644
--- a/source/blender/editors/space_file/fsmenu.c
+++ b/source/blender/editors/space_file/fsmenu.c
@@ -229,7 +229,7 @@ void fsmenu_entry_refresh_valid(struct FSMenuEntry *fsentry)
 		int i;
 
 		for (i = 0; exceptions[i]; i++) {
-			if (STRCASEEQLEN(fsentry->path, exceptions[i], exceptions_len[i])) {
+			if (STREQLEN(fsentry->path, exceptions[i], exceptions_len[i])) {
 				fsentry->valid = true;
 				return;
 			}

  ($item);
}
Oops! Sorry it's me again. I just tested you commit. Compilation failed. I propose this patch: ``` foreach ($list as $item) { diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c index 6b4ee31..242464c 100644 --- a/source/blender/editors/space_file/fsmenu.c +++ b/source/blender/editors/space_file/fsmenu.c @@ -229,7 +229,7 @@ void fsmenu_entry_refresh_valid(struct FSMenuEntry *fsentry) int i; for (i = 0; exceptions[i]; i++) { - if (STRCASEEQLEN(fsentry->path, exceptions[i], exceptions_len[i])) { + if (STREQLEN(fsentry->path, exceptions[i], exceptions_len[i])) { fsentry->valid = true; return; } ($item); } ```

Pardon pour la mise en page :)

Pardon pour la mise en page :)
Member

Added subscriber: @JulianEisel

Added subscriber: @JulianEisel
Member

@you.le, do you mean compilation of latest master fails or something regarding Bastien's patch?

@you.le, do you mean compilation of latest master fails or something regarding Bastien's patch?

Yes compilation failed because of line 232 in \blender\source\blender\editors\space_file\fsmenu.c if (STRCASEEQLEN(fsentry->path, exceptions- [x], exceptions_len[i])) {

This line has to be replaced by:

if (STREQLEN(fsentry->path, exceptions- [x], exceptions_len[i])) {

to make it work. That was the mont29 first intention (cf his patch above)... But I don't know why he changed it. :)

Yes compilation failed because of line 232 in \blender\source\blender\editors\space_file\fsmenu.c if (STRCASEEQLEN(fsentry->path, exceptions- [x], exceptions_len[i])) { This line has to be replaced by: if (STREQLEN(fsentry->path, exceptions- [x], exceptions_len[i])) { to make it work. That was the mont29 first intention (cf his patch above)... But I don't know why he changed it. :)

Yes, compilation of the last updated master with his commit included...

Yes, compilation of the last updated master with his commit included...

That's because of this commit: 5115e86246..e089b0e911:/source/blender/editors/space_file/fsmenu.c

That's because of this commit: https://git.blender.org/gitweb/gitweb.cgi/blender.git/blobdiff/5115e862460203c5e31bb5d62acc3fda2b0cc2bd..e089b0e91162fb0932bdb88e9905cdd9fb6b94dd:/source/blender/editors/space_file/fsmenu.c

Fixed as 2967253ae4 (stupid MSVC again).

Fixed as 2967253ae4 (stupid MSVC again).
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
6 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#43684
No description provided.