Skip to content

Commit 105201b

Browse files
committed
handle empty segments
1 parent 82e154b commit 105201b

2 files changed

Lines changed: 2 additions & 1 deletion

File tree

packages/google-api-core/google/api_core/path_template.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ def _validate_multi_segment_value(val: str) -> bool:
102102
unseen_segments -= 1
103103
if segment == "..":
104104
leftover_segments -= 1
105-
elif segment != ".":
105+
elif segment not in (".", ""):
106106
leftover_segments += 1
107107

108108
if leftover_segments < 0:

packages/google-api-core/tests/unit/test_path_template.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -760,6 +760,7 @@ def test_path_traversal_dots_validation_double_star_valid(name_val, expected_pat
760760
"projects/my-project/monitoredResourceDescriptors/..",
761761
"projects/my-project/monitoredResourceDescriptors/instance/../..",
762762
"projects/my-project/monitoredResourceDescriptors/a/b/../../../c/d/e/..",
763+
"projects/my-project/monitoredResourceDescriptors/instance//..",
763764
],
764765
)
765766
def test_path_traversal_dots_validation_double_star_invalid(name_val):

0 commit comments

Comments
 (0)