--- flag.inc.orig
+++ flag.inc
@@ -1002,6 +1002,22 @@ class flag_flag {
   }
 
   /**
+   * Rebuilds a flag from the default definition.
+   */
+  function rebuild() {
+    // First get the default flag to rebuild from
+    $default_flags = flag_get_default_flags();
+    foreach ($default_flags as $default_flag) {
+      if ($default_flag->name == $this->name) {
+        // We found the flag, overwrite it with the code version
+        $default_flag->fid = $this->fid;
+        $default_flag->save();
+        break;
+      }
+    }
+  }
+
+  /**
    * Deletes a flag from the database.
    */
   function delete() {
--- includes/flag.features.inc.orig
+++ includes/flag.features.inc
@@ -65,7 +65,7 @@ function flag_features_revert($module = NULL) {
     // Delete flags that are defined in code.
     foreach ($default_flags as $default_flag) {
       $current_flag = flag_get_flag($default_flag['name']);
-      $current_flag->delete();
+      $current_flag->rebuild();
     }
     _flag_clear_cache();
   }
