==== bugfix ====
- fix for #5955 - fixing too short pathnames causing memory overwriting when starting blender from a path with a very long name.
This commit is contained in:
		| @@ -332,11 +332,11 @@ that dir info is available. | |||||||
| ****************************************************************************/ | ****************************************************************************/ | ||||||
| void BPY_post_start_python( void ) | void BPY_post_start_python( void ) | ||||||
| { | { | ||||||
| 	char dirpath[FILE_MAXDIR]; | 	char dirpath[FILE_MAX]; | ||||||
| 	char *sdir = NULL; | 	char *sdir = NULL; | ||||||
|  |  | ||||||
| 	if(U.pythondir[0] != '\0' ) { | 	if(U.pythondir[0] != '\0' ) { | ||||||
| 		char modpath[FILE_MAXDIR]; | 		char modpath[FILE_MAX]; | ||||||
| 		int upyslen = strlen(U.pythondir); | 		int upyslen = strlen(U.pythondir); | ||||||
|  |  | ||||||
| 		/* check if user pydir ends with a slash and, if so, remove the slash | 		/* check if user pydir ends with a slash and, if so, remove the slash | ||||||
| @@ -349,7 +349,7 @@ void BPY_post_start_python( void ) | |||||||
| 				U.pythondir[upyslen - 1] = '\0'; | 				U.pythondir[upyslen - 1] = '\0'; | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		BLI_strncpy(dirpath, U.pythondir, FILE_MAXDIR); | 		BLI_strncpy(dirpath, U.pythondir, FILE_MAX); | ||||||
| 		BLI_convertstringcode(dirpath, G.sce, 0); | 		BLI_convertstringcode(dirpath, G.sce, 0); | ||||||
| 		syspath_append(dirpath);	/* append to module search path */ | 		syspath_append(dirpath);	/* append to module search path */ | ||||||
|  |  | ||||||
|   | |||||||
| @@ -823,8 +823,8 @@ static int bpymenu_ParseDir(char *dirname, char *parentdir, int is_userdir ) | |||||||
| 	struct dirent *de; | 	struct dirent *de; | ||||||
| 	struct stat status; | 	struct stat status; | ||||||
| 	char *file_extension; | 	char *file_extension; | ||||||
| 	char path[FILE_MAXDIR]; | 	char path[FILE_MAX]; | ||||||
| 	char subdir[FILE_MAXDIR]; | 	char subdir[FILE_MAX]; | ||||||
| 	char *s = NULL; | 	char *s = NULL; | ||||||
| 	 | 	 | ||||||
| 	dir = opendir(dirname); | 	dir = opendir(dirname); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user