--- coder.module	Tue Aug 14 14:42:41 2007
+++ coder.module	Fri Jan 04 10:22:30 2008
@@ -47,10 +47,19 @@
     $files = drupal_system_listing('coder_.*\.inc$', $path, 'name', 0);
     foreach ($files as $file) {
       require_once('./'. $file->filename);
-      $function = $file->name .'_reviews';
+      // Grab extension name
+      $string_parts = explode('_', $file->name);
+      array_shift($string_parts);
+      if (count($string_parts) > 1) {
+        $ext_name = implode('_', $string_parts);
+      }
+      else {
+        $ext_name = $string_parts[0];
+      }
+      $function = 'coder_'. $ext_name .'_reviews';
       if (function_exists($function)) {
         if ($review = call_user_func($function)) {
-          $_coder_reviews = array_merge($_coder_reviews, $review);
+          $_coder_reviews[$ext_name] = $review;
         }
       }
     }
@@ -162,7 +171,10 @@
   // maintain a secondary list based on #title only, to make sorting possible
   $reviews = _coder_reviews();
   foreach ($reviews as $name => $review) {
-    $review_options[$name] = l($review['#title'], $review['#link']);
+    $review_options[$name] = $review['#title'];
+    if ($review['#link']) {
+      $review_options[$name] = l($review_options[$name], $review['#link']);
+    }
     if (isset($review['#description'])) {
       $review_options[$name] .= ' ('. $review['#description'] .')';
     }
@@ -1072,7 +1084,6 @@
             }
           }
         }
-
         $line = $coder_args['#all_lines'][$lineno];
         $severity_name = _coder_severity_name($coder_args, $review, $rule);
         _coder_error($results, $rule, $severity_name, $lineno, $line);
--- coder_47.inc	Thu May 31 19:47:57 2007
+++ coder_47.inc	Fri Jan 04 09:34:41 2008
@@ -104,7 +104,7 @@
     '#rules' => $rules,
     '#severity' => 'critical',
   );
-  return array('upgrade47' => $review);
+  return $review;
 }
 
 /**
--- coder_50.inc	Thu Aug 16 12:00:25 2007
+++ coder_50.inc	Fri Jan 04 09:34:32 2008
@@ -72,7 +72,7 @@
     '#rules' => $rules,
     '#severity' => 'critical',
   );
-  return array('upgrade50' => $review);
+  return $review;
 }
 
 /**
--- coder_6x.inc	Tue Aug 14 14:57:21 2007
+++ coder_6x.inc	Fri Jan 04 09:30:42 2008
@@ -202,7 +202,7 @@
     '#rules' => $rules,
     '#severity' => 'critical',
   );
-  return array('upgrade6x' => $review);
+  return $review;
 }
 
 function _coder_6x_callback(&$coder_args, $review, $rule, $lines, &$results) {
--- coder_comment.inc	Sun Jun 10 06:08:00 2007
+++ coder_comment.inc	Fri Jan 04 09:30:25 2008
@@ -28,5 +28,5 @@
     '#rules' => $rules,
     '#description' => t('every developer should use'),
   );
-  return array('comment' => $review);
+  return $review;
 }
--- coder_security.inc	Thu May 31 19:47:57 2007
+++ coder_security.inc	Fri Jan 04 09:01:59 2008
@@ -37,7 +37,7 @@
     '#severity' => 'critical',
     '#description' => t('very basic, needs work, but what it finds is good'),
   );
-  return array('security' => $review);
+  return $review;
 }
 
 
--- coder_style.inc	Sun Jul 22 13:12:01 2007
+++ coder_style.inc	Fri Jan 04 09:02:12 2008
@@ -117,7 +117,7 @@
     '#rules' => $rules,
     '#description' => t('every developer should use'),
   );
-  return array('style' => $review);
+  return $review;
 }
 
 /**
