From 2d60ea7fa8c34f5904e5bc40d2d2c60fd938232d Mon Sep 17 00:00:00 2001
From: Joey Hess <joey@gnu.kitenet.net>
Date: Sun, 18 Oct 2009 13:56:35 -0400
Subject: [PATCH] edittemplate: Work around bug #551499 in CGI::FormBuilder.

---
 IkiWiki/Plugin/edittemplate.pm | 7 +++++--
 debian/changelog               | 1 +
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/IkiWiki/Plugin/edittemplate.pm b/IkiWiki/Plugin/edittemplate.pm
index e8e7b1e04..a163b0d84 100644
--- a/IkiWiki/Plugin/edittemplate.pm
+++ b/IkiWiki/Plugin/edittemplate.pm
@@ -83,10 +83,13 @@ sub formbuilder (@) {
 	foreach my $field ($form->field) {
 		if ($field eq 'page') {
 			@page_locs=$field->def_value;
-			push @page_locs, $field->options;
+
+			# FormBuilder is on the bad crack. See #551499
+			my @options=map { ref $_ ? @$_ : $_ } $field->options;
+
+			push @page_locs, @options;
 		}
 	}
-
 	foreach my $p (@page_locs) {
 		foreach my $registering_page (keys %pagestate) {
 			if (exists $pagestate{$registering_page}{edittemplate}) {
diff --git a/debian/changelog b/debian/changelog
index 81935f998..95dc8c6b2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ ikiwiki (3.20091018) UNRELEASED; urgency=low
 
   * edittemplate: Allow template page name to be specified using anything
     legal for a wikilink (including eg, leading slashes).
+  * edittemplate: Work around bug #551499 in CGI::FormBuilder.
 
  -- Joey Hess <joeyh@debian.org>  Sun, 18 Oct 2009 13:44:09 -0400
 
-- 
2.39.5