Subject: | Erroneously rejecting 'restrictive' license |
The attached patch against CVS (v0.27_02) corrects a mistake in do_create_metafile() where the license value of undef is incorrectly equated with absense. For the case of "restrictive => undef" this meant that the code emitted "Unknown license type 'restrictive".
Also, I fixed the missing trailing single-quote in the error message.
Index: lib/Module/Build/Base.pm
===================================================================
RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v
retrieving revision 1.472
diff -u -b -r1.472 Base.pm
--- lib/Module/Build/Base.pm 4 Aug 2005 06:47:34 -0000 1.472
+++ lib/Module/Build/Base.pm 9 Aug 2005 18:51:10 -0000
@@ -2590,8 +2590,8 @@
$self->log_warn("No license specified, setting license = 'unknown'\n");
$p->{license} = 'unknown';
}
- unless ($self->valid_licenses->{ $p->{license} }) {
- die "Unknown license type '$p->{license}";
+ unless (exists $self->valid_licenses->{ $p->{license} }) {
+ die "Unknown license type '$p->{license}'";
}
# If we're in the distdir, the metafile may exist and be non-writable.