diff --git a/modules/filter/filter.install b/modules/filter/filter.install
index fe2857a9853bf90f242399681d36893040b5b310..01b67cfc275b4c216be5bb84bcadc1dff73529ba 100644
--- a/modules/filter/filter.install
+++ b/modules/filter/filter.install
@@ -139,6 +139,18 @@ function filter_install() {
   variable_set('filter_fallback_format', $plain_text_format->format);
 }
 
+/**
+ * Implements hook_update_dependencies().
+ */
+function filter_update_dependencies() {
+  // Filter update 7007 migrates permissions and therefore needs to run after
+  // the {role} table is properly set up.
+  $dependencies['filter'][7005] = array(
+    'user' => 7007,
+  );
+
+  return $dependencies;
+}
 /**
  * @defgroup updates-6.x-to-7.x Filter updates from 6.x to 7.x
  * @{