Skip to content

Commit 9c08ebe

Browse files
fix ReferenceContext with multiple dots cebe#94
1 parent 70fc5bf commit 9c08ebe

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/ReferenceContext.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,14 +115,16 @@ private function reduceDots($path)
115115
{
116116
$parts = explode('/', ltrim($path, '/'));
117117
$c = count($parts);
118+
$parentOffset = 1;
118119
for ($i = 0; $i < $c; $i++) {
119120
if ($parts[$i] === '.') {
120121
unset($parts[$i]);
121122
continue;
122123
}
123-
if ($i > 0 && $parts[$i] === '..' && $parts[$i-1] !== '..') {
124-
unset($parts[$i-1]);
124+
if ($i > 0 && $parts[$i] === '..' && $parts[$i - $parentOffset] !== '..') {
125+
unset($parts[$i - $parentOffset]);
125126
unset($parts[$i]);
127+
$parentOffset += 2;
126128
}
127129
}
128130
return '/'.implode('/', $parts);

0 commit comments

Comments
 (0)