Skip to content

Commit 2cfc277

Browse files
committed
fix __truediv__
1 parent 14f124d commit 2cfc277

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

upath/core.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -327,13 +327,22 @@ def _from_parsed_parts(self, drv, root, parts, init=True):
327327
return obj
328328

329329
def __truediv__(self, key):
330+
# Add `/` root if not present
330331
if len(self._parts) == 0:
331332
key = f"{self._root}{key}"
332-
out = self._make_child((key,))
333-
kwargs = out._kwargs.copy()
333+
334+
# Adapted from `PurePath._make_child`
335+
drv, root, parts = self._parse_args((key,))
336+
drv, root, parts = self._flavour.join_parsed_parts(
337+
self._drv, self._root, self._parts, drv, root, parts
338+
)
339+
340+
kwargs = self._kwargs.copy()
334341
kwargs.pop("_url")
335-
out = out.__class__(
336-
out._format_parsed_parts(out._drv, out._root, out._parts),
342+
343+
# Create a new object
344+
out = self.__class__(
345+
self._format_parsed_parts(drv, root, parts),
337346
**kwargs,
338347
)
339348
return out

0 commit comments

Comments
 (0)