Eryk Sun added the comment:
What's the rationale for not calling self._flavour.pathmod.abspath() to
implement absolute()? For example:
>>> p = pathlib.Path('C:/con')
>>> p._flavour.pathmod.abspath(p)
'\\\\.\\con'
>>> p._from_parts((p._flavour.pathmod.abspath(p),), init=False)
WindowsPath('//./con/')
That's almost right except for an unrelated problem that pathlib shouldn't
append a trailing slash for \\.\ local device paths. Doing so creates a
different path, which may be invalid. \\.\con is a symbolic link to
\Device\ConDrv\Console, and adding a trailing backslash after the "Console"
filename is invalid. An example where the resulting path is valid but wrong is
the volume device \\.\C:, which is a link to something like
\Device\HarddiskVolume2. Appending a backslash refers to the root directory of
the file system on the volume.
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue29688>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com