--- form.inc.old	2009-01-09 00:07:20.000000000 -0500
+++ form.inc	2009-01-09 00:11:33.000000000 -0500
@@ -1534,7 +1534,7 @@
   $output .= (check_plain($element['#value']) == $element['#return_value']) ? ' checked="checked" ' : ' ';
   $output .= drupal_attributes($element['#attributes']) .' />';
   if (!is_null($element['#title'])) {
-    $output = '<label class="option">'. $output .' '. $element['#title'] .'</label>';
+    $output = '<label class="option" for="' . $element['#id'] . '">'. $output .' '. $element['#title'] .'</label>';
   }
 
   unset($element['#title']);
@@ -1873,7 +1873,7 @@
   $checkbox .= drupal_attributes($element['#attributes']) .' />';
 
   if (!is_null($element['#title'])) {
-    $checkbox = '<label class="option">'. $checkbox .' '. $element['#title'] .'</label>';
+    $checkbox = '<label class="option" for="' . $element['#id'] . '">'. $checkbox .' '. $element['#title'] .'</label>';
   }
 
   unset($element['#title']);
