? flag-alter.patch
Index: flag.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/flag/Attic/flag.module,v
retrieving revision 1.11.2.70
diff -u -p -r1.11.2.70 flag.module
--- flag.module	17 Mar 2009 02:07:34 -0000	1.11.2.70
+++ flag.module	16 Apr 2009 18:22:32 -0000
@@ -844,6 +844,9 @@ function flag_get_flags($content_type = 
     // Database flags.
     $result = db_query("SELECT f.*, fn.type FROM {flags} f LEFT JOIN {flag_types} fn ON fn.fid = f.fid");
     while ($row = db_fetch_object($result)) {
+      // Allow modules implementing hook_flag_alter(&$flag) to modify the flag.
+      drupal_alter('flag', $row);
+
       if (!isset($flags[$row->name])) {
         $flags[$row->name] = flag_flag::factory_by_row($row);
       }
@@ -857,6 +860,9 @@ function flag_get_flags($content_type = 
     foreach ($default_flags as $name => $default_flag) {
       // Insert new enabled flags into the database to give them an FID.
       if ($default_flag->status && !isset($flags[$name])) {
+        // Allow modules implementing hook_flag_alter(&$flag) to modify the flag.
+        drupal_alter('flag', $default_flag);
+
         $default_flag->save();
         $flags[$name] = $default_flag;
       }
