mirror of
https://github.com/python/cpython.git
synced 2025-08-31 14:07:50 +00:00
This fixes issue5143 and includes a test.
Issue5143 notes that getpath.c and main.c pass a 'char*' where a 'wchar_t*' is expected on OSX.
This commit is contained in:
parent
50987bce06
commit
3e264e13ed
3 changed files with 58 additions and 5 deletions
|
@ -457,6 +457,7 @@ calculate_path(void)
|
|||
#else
|
||||
unsigned long nsexeclength = MAXPATHLEN;
|
||||
#endif
|
||||
char execpath[MAXPATHLEN+1];
|
||||
#endif
|
||||
|
||||
if (_path) {
|
||||
|
@ -486,8 +487,13 @@ calculate_path(void)
|
|||
* will fail if a relative path was used. but in that case,
|
||||
* absolutize() should help us out below
|
||||
*/
|
||||
else if(0 == _NSGetExecutablePath(progpath, &nsexeclength) && progpath[0] == SEP)
|
||||
;
|
||||
else if(0 == _NSGetExecutablePath(execpath, &nsexeclength) && execpath[0] == SEP) {
|
||||
size_t r = mbstowcs(progpath, execpath, MAXPATHLEN+1);
|
||||
if (r == (size_t)-1 || r > MAXPATHLEN) {
|
||||
/* Could not convert execpath, or it's too long. */
|
||||
progpath[0] = '\0';
|
||||
}
|
||||
}
|
||||
#endif /* __APPLE__ */
|
||||
else if (path) {
|
||||
while (1) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue