remove trailing slash from attachment_holding_dir
authorJoey Hess <joey@kitenet.net>
Tue, 14 Jun 2011 19:47:47 +0000 (15:47 -0400)
committerJoey Hess <joey@kitenet.net>
Tue, 14 Jun 2011 19:49:33 +0000 (15:49 -0400)
If it's passed a filename, it should return the filename inside the holding
dir. If passed a page, the directory sans slash. All code adds the slash.

IkiWiki/Plugin/attachment.pm

index f8a3a68c601c373a927ff9f175f1a00772d8f9c6..4bd08bf7b6da8bf3f0f4b7d6f48efa1ced9eadf0 100644 (file)
@@ -153,18 +153,19 @@ sub formbuilder (@) {
        $form->tmpl_param("attachment_list" => [attachment_list($form->field('page'))]);
 }
 
-sub attachment_holding_dir {
+sub attachment_holding_location {
        my $page=attachment_location(shift);
 
-       return $config{wikistatedir}."/attachments/".
+       my $dir=$config{wikistatedir}."/attachments/".
                IkiWiki::possibly_foolish_untaint(linkpage($page));
+       $dir=~s/\/$//;
+       return $dir;
 }
 
 sub is_held_attachment {
        my $attachment=shift;
 
-       my $f=attachment_holding_dir($attachment);
-       $f=~s/\/$//;
+       my $f=attachment_holding_location($attachment);
        if (-f $f) {
                return $f
        }
@@ -214,7 +215,7 @@ sub attachment_store {
 
        # Move the attachment into holding directory.
        # Try to use a fast rename; fall back to copying.
-       my $dest=attachment_holding_dir($form->field('page'));
+       my $dest=attachment_holding_location($form->field('page'));
        IkiWiki::prep_writefile($filename, $dest);
        unlink($dest."/".$filename);
        if (rename($tempfile, $dest."/".$filename)) {
@@ -248,7 +249,7 @@ sub attachments_save {
 
        # Move attachments out of holding directory.
        my @attachments;
-       my $dir=attachment_holding_dir($form->field('page'));
+       my $dir=attachment_holding_location($form->field('page'));
        foreach my $filename (glob("$dir/*")) {
                next unless -f $filename;
                my $dest=$config{srcdir}."/".
@@ -317,7 +318,7 @@ sub attachment_list ($) {
        }
        
        # attachments in holding directory
-       my $dir=attachment_holding_dir($page);
+       my $dir=attachment_holding_location($page);
        my $heldmsg=gettext("this attachment is not yet saved");
        foreach my $file (glob("$dir/*")) {
                next unless -f $file;