diff options
author | Eric Wong <e@80x24.org> | 2022-11-28 05:32:14 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2022-11-28 23:38:58 +0000 |
commit | 464c28e42bbbe54fc1d13629258eff31ecfc1689 (patch) | |
tree | a3ad51c7d6075067ee9ef54e65e5d619e19b8745 | |
parent | a38db0188e264c08e39354d8945cf1e7ac35e708 (diff) | |
download | public-inbox-464c28e42bbbe54fc1d13629258eff31ecfc1689.tar.gz |
Users may wish to keep objstore and manifest files at a higher level to prevent direct access via HTTP(S), so those relative paths probably make sense.
-rw-r--r-- | Documentation/public-inbox-clone.pod | 12 | ||||
-rw-r--r-- | lib/PublicInbox/LeiMirror.pm | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/Documentation/public-inbox-clone.pod b/Documentation/public-inbox-clone.pod index 5e6a6fe9..9bcb9967 100644 --- a/Documentation/public-inbox-clone.pod +++ b/Documentation/public-inbox-clone.pod @@ -89,9 +89,9 @@ for testing. Enables space savings when the remote C<manifest.js.gz> includes C<forkgroup> entries as generated by grokmirror 2.x. -If C<DIR> is not an absolute path, it is relative to the -C<DESTINATION> directory. If only C<--objstore=> is specified -where C<DIR> is an empty string (C<"">), then C<objstore> +If C<DIR> does not start with C</>, C<./>, or C<../>, it is treated +as relative to the C<DESTINATION> directory. If only C<--objstore=> +is specified where C<DIR> is an empty string (C<"">), then C<objstore> (C<$DESTINATION/objstore>) is the implied value of C<DIR>. =item --manifest=FILE @@ -99,9 +99,9 @@ where C<DIR> is an empty string (C<"">), then C<objstore> When incrementally updating an existing mirror, load the given manifest (typically C<manifest.js.gz>) to speed up updates. -If C<FILE> is not an absolute path, it is relative to the -C<DESTINATION> directory. If only C<--manifest => is specified -where C<FILE > is an empty string (C<"">), then C<manifest.js.gz> +If C<FILE> does not start with C</>, C<./>, or C<../>, it is treated +as relative to the C<DESTINATION> directory. If only C<--manifest=> +is specified where C<FILE> is an empty string (C<"">), then C<manifest.js.gz> (C<$DESTINATION/manifest.js.gz>) is the implied value of C<FILE>. =item -p diff --git a/lib/PublicInbox/LeiMirror.pm b/lib/PublicInbox/LeiMirror.pm index e0a212de..ec2ed557 100644 --- a/lib/PublicInbox/LeiMirror.pm +++ b/lib/PublicInbox/LeiMirror.pm @@ -1055,7 +1055,7 @@ sub do_mirror { # via wq_io_do or public-inbox-clone my ($k) = (split(/\./, $default))[0]; my $v = $lei->{opt}->{$k} // next; $v = $default if $v eq ''; - $v = "$self->{dst}/$v" if $v !~ m!\A/!; + $v = "$self->{dst}/$v" if $v !~ m!\A\.{0,2}/!; $self->{"-$k"} = $v; } local $LIVE = {}; |