--- /var/cpan/build/CGI.pm-3.00/CGI.pm	2003-08-18 19:44:24.000000000 +0200
+++ /usr/share/perl/5.8.0/CGI.pm	2003-10-07 14:37:12.000000000 +0200
@@ -1960,7 +1960,8 @@
     $value = defined $value ? $value : 'on';
 
     if (!$override && ($self->{'.fieldnames'}->{$name} || 
-		       defined $self->param($name))) {
+		       defined $self->param($name)) ||
+		       defined $self->param('.'.$name)) {
 	$checked = grep($_ eq $value,$self->param($name)) ? $self->_checked(1) : '';
     } else {
 	$checked = $self->_checked($checked);
@@ -1971,8 +1972,8 @@
     $the_label = $self->escapeHTML($the_label);
     my($other) = @other ? " @other" : '';
     $self->register_parameter($name);
-    return $XHTML ? qq{<input type="checkbox" name="$name" value="$value"$checked$other />$the_label}
-                  : qq{<input type="checkbox" name="$name" value="$value"$checked$other>$the_label};
+    return $XHTML ? qq{<input type="checkbox" name="$name" value="$value"$checked$other /><input type="hidden" name=".$name" value="$value" />$the_label}
+                  : qq{<input type="checkbox" name="$name" value="$value"$checked$other><input type="hidden" name=".$name" value="$value">$the_label};
 }
 END_OF_FUNC
 
