]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/commitdiff
Fix committing attachments when using svn.
authorJoey Hess <joey@kitenet.net>
Wed, 10 Jul 2013 22:23:09 +0000 (18:23 -0400)
committerJoey Hess <joey@kitenet.net>
Wed, 10 Jul 2013 22:23:09 +0000 (18:23 -0400)
IkiWiki/Plugin/attachment.pm
doc/bugs/Attachment_plug-in_not_committing_files.mdwn

index aea70429d0bcc3bc86a776ba8b2dde8352483a37..83dd120f649ea13898ee9cc479bb576cb94043b7 100644 (file)
@@ -274,15 +274,15 @@ sub attachments_save {
        foreach my $filename (glob("$dir/*")) {
                $filename=Encode::decode_utf8($filename);
                next unless -f $filename;
-               my $destdir=$config{srcdir}."/".
-                       linkpage(IkiWiki::possibly_foolish_untaint(
-                               attachment_location($form->field('page'))));
+               my $destdir=linkpage(IkiWiki::possibly_foolish_untaint(
+                       attachment_location($form->field('page'))));
+               my $absdestdir=$config{srcdir}."/".$destdir;
                my $destfile=IkiWiki::basename($filename);
-               my $dest=$destdir.$destfile;
+               my $dest=$absdestdir.$destfile;
                unlink($dest);
-               IkiWiki::prep_writefile($destfile, $destdir);
+               IkiWiki::prep_writefile($destfile, $absdestdir);
                rename($filename, $dest);
-               push @attachments, $dest;
+               push @attachments, $destdir.$destfile;
        }
        return unless @attachments;
        require IkiWiki::Render;
index 05db1f86ed1899808b0c420ba498edf429231ff3..aaba13326d169a69a23a904afb2705e25408cc76 100644 (file)
@@ -10,3 +10,9 @@ From this code it looks like $dest needs to be absolute and that a relative path
     push @attachments, $dest;
 
 I'm using ikiwiki version 3.20120202ubuntu1.
+
+> I don't think this affects git, just because it happens to 
+> allow adding with an absolute path.
+> 
+> So, this is an interesting way svn support can bit rot if nothing
+> is testing it! [[fixed|done]] --[[Joey]]