bpo-37616: Handle version information more gracefully in getpath.c (GH-20214)
This commit is contained in:
parent
2abededbc4
commit
2a561b5f68
|
@ -1296,8 +1296,8 @@ calculate_zip_path(PyCalculatePath *calculate)
|
|||
{
|
||||
PyStatus res;
|
||||
|
||||
/* Path: <PLATLIBDIR> / "python00.zip" */
|
||||
wchar_t *path = joinpath2(calculate->platlibdir_macro, L"python000.zip");
|
||||
/* Path: <PLATLIBDIR> / "pythonXY.zip" */
|
||||
wchar_t *path = joinpath2(calculate->platlibdir_macro, L"python" Py_STRINGIFY(PY_MAJOR_VERSION) Py_STRINGIFY(PY_MINOR_VERSION) L".zip");
|
||||
if (path == NULL) {
|
||||
return _PyStatus_NO_MEMORY();
|
||||
}
|
||||
|
@ -1305,7 +1305,7 @@ calculate_zip_path(PyCalculatePath *calculate)
|
|||
if (calculate->prefix_found > 0) {
|
||||
/* Use the reduced prefix returned by Py_GetPrefix()
|
||||
|
||||
Path: <basename(basename(prefix))> / <PLATLIBDIR> / "python000.zip" */
|
||||
Path: <basename(basename(prefix))> / <PLATLIBDIR> / "pythonXY.zip" */
|
||||
wchar_t *parent = _PyMem_RawWcsdup(calculate->prefix);
|
||||
if (parent == NULL) {
|
||||
res = _PyStatus_NO_MEMORY();
|
||||
|
@ -1325,12 +1325,6 @@ calculate_zip_path(PyCalculatePath *calculate)
|
|||
goto done;
|
||||
}
|
||||
|
||||
/* Replace "000" with the version */
|
||||
size_t len = wcslen(calculate->zip_path);
|
||||
calculate->zip_path[len - 7] = VERSION[0];
|
||||
calculate->zip_path[len - 6] = VERSION[2];
|
||||
calculate->zip_path[len - 5] = VERSION[3];
|
||||
|
||||
res = _PyStatus_OK();
|
||||
|
||||
done:
|
||||
|
|
Loading…
Reference in New Issue