From: Joey Hess <joey@kitenet.net>
Date: Fri, 8 Jul 2011 00:32:14 +0000 (-0400)
Subject: Bugfix for trying to attach files to a subpage of the index page.
X-Git-Tag: 3.20110707~1
X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/commitdiff_plain/9f7d9ab356ba81972bf8bed8486a6994fef51667?ds=inline

Bugfix for trying to attach files to a subpage of the index page.
---

diff --git a/IkiWiki/Plugin/attachment.pm b/IkiWiki/Plugin/attachment.pm
index 4d6dee23e..52bac7c1e 100644
--- a/IkiWiki/Plugin/attachment.pm
+++ b/IkiWiki/Plugin/attachment.pm
@@ -303,8 +303,8 @@ sub attachment_location ($) {
 	my $page=shift;
 	
 	# Put the attachment in a subdir of the page it's attached
-	# to, unless that page is an "index" page.
-	$page=~s/(^|\/)index//;
+	# to, unless that page is the "index" page.
+	return "" if $page eq 'index';
 	$page.="/" if length $page;
 	
 	return $page;
diff --git a/debian/changelog b/debian/changelog
index ece9df882..f51d41c2a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -31,6 +31,7 @@ ikiwiki (3.20110609) UNRELEASED; urgency=low
     markdown when forcing urls absolute.
   * Bugfix for wikilink containing an email address not showing up in 
     brokenlinks list.
+  * Bugfix for trying to attach files to a subpage of the index page.
 
  -- Joey Hess <joeyh@debian.org>  Thu, 09 Jun 2011 10:06:44 -0400
 
diff --git a/doc/bugs/Unable_to_add_attachments_to_some_pages.mdwn b/doc/bugs/Unable_to_add_attachments_to_some_pages.mdwn
index a9255ba3a..c7fe0bd15 100644
--- a/doc/bugs/Unable_to_add_attachments_to_some_pages.mdwn
+++ b/doc/bugs/Unable_to_add_attachments_to_some_pages.mdwn
@@ -24,3 +24,8 @@ Please advise.
 >> I dont have an `allowed_attachments` section in my setup file
 >> But I've set an `allowed_attachments` like `allowed_attachments => 'maxsize(40000kb) and mimetype(*)',` and I still get the error.
 >> Thanks --[[aland]]
+
+>>> Being the subpage of index is the problem. It's not usual to have
+>>> any other page as a subpage of index; as there's really no reason to do
+>>> that, so some code broke in that special case. [[fixed|done]]
+>>> --[[Joey]]