? modules/syndication
Index: modules/user/user.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/user/user.module,v
retrieving revision 1.928
diff -u -p -r1.928 user.module
--- modules/user/user.module	12 Oct 2008 04:30:09 -0000	1.928
+++ modules/user/user.module	12 Oct 2008 20:10:40 -0000
@@ -2448,3 +2448,17 @@ function _user_forms(&$edit, $account, $
   return empty($groups) ? FALSE : $groups;
 }
 
+/**
+ * Implementation of hook_modules_uninstalled().
+ */
+function user_modules_uninstalled($modules) {
+  foreach ($modules as $module) {
+    drupal_load('module', $module);
+    $permissions = module_invoke($module, 'perm');
+    if (!empty($permissions)) {
+      db_delete('role_permission')
+        ->condition('permission', array_keys($permissions), 'IN')
+        ->execute();
+    }
+  }
+}
