--- redmine_repository_control/apache/RedmineRepoControl.pm     2010-07-28 14:44:22.701588473 +0200
+++ redmine_repository_control-new/apache/RedmineRepoControl.pm       2010-07-28 14:44:18.701581904 +0200
@@ -276,9 +276,10 @@
     #
     # 2. Check the role the user belongs to in the project for permissions
     #
-    my $sth = $dbh->prepare("SELECT roles.id FROM members, projects, users, roles
+    my $sth = $dbh->prepare("SELECT roles.id FROM members, projects, users, member_roles, roles
                     WHERE projects.id=members.project_id AND users.id=members.user_id
-                    AND roles.id=members.role_id AND users.status=1 AND login=? AND identifier=?");
+                    AND users.id=members.user_id AND member_roles.member_id = members.id AND roles.id=member_roles.role_id
+                    AND users.status=1 AND login=? AND identifier=?");
     $sth->execute($redmine_user, $project_id);
     while ( my($role_id) = $sth->fetchrow_array ) {
         #$r->log_error("$redmine_user was found to be in role $role_id for project $project_id");