diff --git a/lib/classes/Seminar.class.php b/lib/classes/Seminar.class.php
index 3b94e6d26fb0ea3cbf5559afb3c06a9fa4b7bbe9..6a5903e1411ec730a4ed72857fa8c9c79199a88e 100644
--- a/lib/classes/Seminar.class.php
+++ b/lib/classes/Seminar.class.php
@@ -2150,10 +2150,9 @@ get_title_for_status('dozent', 1, $this->status)));
      */
     public function setMemberPriority($members): Seminar
     {
-        $counter = 0;
         CourseMember::findEachBySQL(
-            function (CourseMember $membership) use (&$counter) {
-                $membership->position = $counter++;
+            function (CourseMember $membership) use (&$members) {
+                $membership->position = array_search($membership->user_id, $members);
                 $membership->store();
             },
             "Seminar_id = ? AND user_id IN (?)",