Skip to content

Commit

Permalink
simplify canonicalization a little
Browse files Browse the repository at this point in the history
  • Loading branch information
kraih committed Sep 8, 2014
1 parent 065e4e3 commit 13c8577
Showing 1 changed file with 3 additions and 7 deletions.
10 changes: 3 additions & 7 deletions lib/Mojo/Path.pm
Expand Up @@ -14,15 +14,11 @@ sub canonicalize {
my $self = shift;

my @parts;
for my $part (@{$self->parts}) {
for my $part (grep { $_ ne '.' && $_ ne '' } @{$self->parts}) {
if ($part ne '..') { push @parts, $part }

# ".."
if ($part eq '..') {
(@parts && $parts[-1] ne '..') ? pop @parts : push @parts, '..';
}

# Something else than "."
elsif ($part ne '.' && $part ne '') { push @parts, $part }
else { @parts && $parts[-1] ne '..' ? pop @parts : push @parts, '..' }
}
$self->trailing_slash(undef) unless @parts;

Expand Down

0 comments on commit 13c8577

Please sign in to comment.