diff options
author | Florian Pritz <bluewind@xinu.at> | 2017-04-02 13:35:14 +0200 |
---|---|---|
committer | Florian Pritz <bluewind@xinu.at> | 2017-04-02 13:42:15 +0200 |
commit | 44441d8c67f155284af4e5f39f29368dd374fdbd (patch) | |
tree | a10252bcf311aebbfea4b55205f0d4ca03c92e79 /lib/App | |
parent | 5901cde8b9a5a02c3f8cebc70205cd4de3b4e0ca (diff) | |
download | App-BorgRestore-44441d8c67f155284af4e5f39f29368dd374fdbd.tar.gz App-BorgRestore-44441d8c67f155284af4e5f39f29368dd374fdbd.tar.xz |
Move path resolving to main package
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Diffstat (limited to 'lib/App')
-rw-r--r-- | lib/App/BorgRestore.pm | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/App/BorgRestore.pm b/lib/App/BorgRestore.pm index e8a3edb..d072a31 100644 --- a/lib/App/BorgRestore.pm +++ b/lib/App/BorgRestore.pm @@ -104,6 +104,22 @@ sub new_no_defaults { return $self; } +sub resolve_relative_path { + my $self = shift; + my $path = shift; + + my $canon_path = File::Spec->canonpath($path); + my $abs_path = abs_path($canon_path); + + if (!defined($abs_path)) { + $log->fatalf("Failed to resolve path to absolute path: %s: %s", $canon_path, $!); + $log->fatal("Make sure that all parts of the path, except the last one, exist."); + return; + } + + return $abs_path; +} + sub find_archives { my $self = shift; my $path = shift; |