mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +00:00 
			
		
		
		
	Always insert script directory in front of sys.path -- if there's no
sys.argv, insert "". Note that "." is removed as a default component of the path (see changes to getpath.c and Setup.in).
This commit is contained in:
		
							parent
							
								
									9afdabffa9
								
							
						
					
					
						commit
						94a9667f1a
					
				
					 1 changed files with 17 additions and 17 deletions
				
			
		|  | @ -360,27 +360,27 @@ setpythonargv(argc, argv) | ||||||
| 	char **argv; | 	char **argv; | ||||||
| { | { | ||||||
| 	object *av = makeargvobject(argc, argv); | 	object *av = makeargvobject(argc, argv); | ||||||
|  | 	object *path = sysget("path"); | ||||||
| 	if (av == NULL) | 	if (av == NULL) | ||||||
| 		fatal("no mem for sys.argv"); | 		fatal("no mem for sys.argv"); | ||||||
| 	if (sysset("argv", av) != 0) | 	if (sysset("argv", av) != 0) | ||||||
| 		fatal("can't assign sys.argv"); | 		fatal("can't assign sys.argv"); | ||||||
| 	if (argc > 0) { | 	if (path != NULL) { | ||||||
| 		object *path = sysget("path"); | 		char *p = NULL; | ||||||
| 		if (path != NULL) { | 		int n; | ||||||
| 			char *p = strrchr(argv[0], SEP); | 		object *a; | ||||||
| 			int n; | 		if (argc > 0 && argv[0] != NULL) | ||||||
| 			object *a; | 			p = strrchr(argv[0], SEP); | ||||||
| 			if (p == NULL) | 		if (p == NULL) | ||||||
| 				n = 0; | 			n = 0; | ||||||
| 			else | 		else | ||||||
| 				n = p + 1 - argv[0]; | 			n = p + 1 - argv[0]; | ||||||
| 			a = newsizedstringobject(argv[0], n); | 		a = newsizedstringobject(argv[0], n); | ||||||
| 			if (a == NULL) | 		if (a == NULL) | ||||||
| 				fatal("no mem for sys.path insertion"); | 			fatal("no mem for sys.path insertion"); | ||||||
| 			if (inslistitem(path, 0, a) < 0) | 		if (inslistitem(path, 0, a) < 0) | ||||||
| 				fatal("sys.path.insert(0) failed"); | 			fatal("sys.path.insert(0) failed"); | ||||||
| 			DECREF(a); | 		DECREF(a); | ||||||
| 		} |  | ||||||
| 	} | 	} | ||||||
| 	DECREF(av); | 	DECREF(av); | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Guido van Rossum
						Guido van Rossum