diff --git a/og.module b/og.module
index dac0ab7..2276370 100755
--- a/og.module
+++ b/og.module
@@ -844,6 +844,10 @@ function og_entity_insert($entity, $entity_type) {
     return;
   }
   list($id, $vid, $bundle) = entity_extract_ids($entity_type, $entity);
+  if (!og_is_group_default_access($entity_type, $entity)) {
+    // Override default roles.
+    og_roles_override($entity_type, $bundle, $id);
+  }
   if (!empty($entity->uid)) {
     // Subscribe the group manager.
     og_group($entity_type, $id, array('entity' => $entity->uid));
@@ -851,14 +855,17 @@ function og_entity_insert($entity, $entity_type) {
     $name = 'og_group_manager_default_rids_' . $entity_type . '_' . $bundle;
     if ($rids = variable_get($name)) {
       foreach ($rids as $rid) {
-        og_role_grant($entity_type, $id, $entity->uid, $rid);
+        $rils_ = og_roles($entity_type, $bundle, $entity->nid, TRUE, TRUE);
+        foreach ($rils_ as $rid_ => $rname_) {
+          $role = og_role_load($rid);
+          $rname = $role->name;
+          if ($rname == $rname_) {
+            og_role_grant($entity_type, $id, $entity->uid, $rid_);
+          }
+        }
       }
     }
   }
-  if (!og_is_group_default_access($entity_type, $entity)) {
-    // Override default roles.
-    og_roles_override($entity_type, $bundle, $id);
-  }
 }
 
 /**
diff --git a/og_ui/og_ui.admin.inc b/og_ui/og_ui.admin.inc
old mode 100644
new mode 100755
