mirror of
https://github.com/python/cpython.git
synced 2025-07-23 03:05:38 +00:00
Check that our override pythonpath is actually coming from the
application, not from some system extension that happens to use the same resource id.
This commit is contained in:
parent
b9bf6e2dde
commit
f12e7093d5
1 changed files with 16 additions and 8 deletions
|
@ -210,6 +210,21 @@ char *dir;
|
|||
Str255 pathitem;
|
||||
int resource_id;
|
||||
OSErr err;
|
||||
Handle h;
|
||||
|
||||
/*
|
||||
** This is a bit tricky. We check here whether the current resource file
|
||||
** contains an override. This is to forestall us finding another STR# resource
|
||||
** with "our" id and using that for path initialization
|
||||
*/
|
||||
SetResLoad(0);
|
||||
if ( (h=Get1Resource('STR#', PYTHONPATHOVERRIDE_ID)) ) {
|
||||
ReleaseResource(h);
|
||||
resource_id = PYTHONPATHOVERRIDE_ID;
|
||||
} else {
|
||||
resource_id = PYTHONPATH_ID;
|
||||
}
|
||||
SetResLoad(1);
|
||||
|
||||
/*
|
||||
** Remember old resource file and try to open preferences file
|
||||
|
@ -229,14 +244,7 @@ char *dir;
|
|||
if( (rv = malloc(2)) == NULL )
|
||||
goto out;
|
||||
strcpy(rv, "\n");
|
||||
/*
|
||||
** See whether there's an override.
|
||||
*/
|
||||
GetIndString(pathitem, PYTHONPATHOVERRIDE_ID, 1);
|
||||
if ( pathitem[0] )
|
||||
resource_id = PYTHONPATHOVERRIDE_ID;
|
||||
else
|
||||
resource_id = PYTHONPATH_ID;
|
||||
|
||||
for(i=1; ; i++) {
|
||||
GetIndString(pathitem, resource_id, i);
|
||||
if( pathitem[0] == 0 )
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue