diff --git a/include/management/actions/class_Action.inc b/include/management/actions/class_Action.inc
index bf25ba4cc878f6bde4bcf6821168b778133718f4..ef8be4db94912deea62d8f716fb0c7c350dd9a7b 100644
--- a/include/management/actions/class_Action.inc
+++ b/include/management/actions/class_Action.inc
@@ -143,9 +143,8 @@ class Action
     );
   }
 
-  function getRowClasses(ListingEntry $entry)
+  function fillRowClasses(&$classes, ListingEntry $entry)
   {
-    return array();
   }
 
   function renderColumnIcons(ListingEntry $entry)
diff --git a/include/management/class_management.inc b/include/management/class_management.inc
index f8177b8f02fdaa6ffe74e687f7d0dee3e749f210..2208298ad1bd2a2a26fe3e890ab7e402afe25a94 100644
--- a/include/management/class_management.inc
+++ b/include/management/class_management.inc
@@ -464,15 +464,11 @@ class management
     return $result;
   }
 
-  function getActionRowClasses(ListingEntry $entry)
+  function fillActionRowClasses(&$classes, ListingEntry $entry)
   {
-    $classes = array();
     foreach ($this->actions as $action) {
-      // TODO optimize
-      $classes = array_merge($classes, $action->getRowClasses($entry));
+      $action->fillRowClasses($classes, $entry);
     }
-
-    return $classes;
   }
 
   /*!
diff --git a/include/management/class_managementListing.inc b/include/management/class_managementListing.inc
index d0860f3d1db5915b4ed23702e5c621fceabb82e3..29b2188c624852b1a3423c148dcf973c66a07a3c 100644
--- a/include/management/class_managementListing.inc
+++ b/include/management/class_managementListing.inc
@@ -168,7 +168,7 @@ class managementListing
           'props'   => $column->getHtmlCellProps(),
           'render'  => $column->renderCell($entry)
         );
-        $row['classes'] = array_merge($row['classes'], $column->getRowClasses($entry));
+        $column->fillRowClasses($row['classes'], $entry);
       }
 
       $row['index']   = $entry->row;
diff --git a/include/management/columns/class_ActionsColumn.inc b/include/management/columns/class_ActionsColumn.inc
index 4ea91a97914ae6a43e125b762b8bcfe51a49e211..62245dcf063683ba0a294de042a7cd01797c5e34 100644
--- a/include/management/columns/class_ActionsColumn.inc
+++ b/include/management/columns/class_ActionsColumn.inc
@@ -28,9 +28,9 @@ class ActionsColumn extends Column
     return FALSE;
   }
 
-  function getRowClasses(ListingEntry $entry)
+  function fillRowClasses(&$classes, ListingEntry $entry)
   {
-    return $this->parent->parent->getActionRowClasses($entry);
+    $this->parent->parent->fillActionRowClasses($classes, $entry);
   }
 
   function renderCell(ListingEntry $entry)
diff --git a/include/management/columns/class_Column.inc b/include/management/columns/class_Column.inc
index 0111b3bacc0ea6fa1d7538920746401d7bb9233a..66b0e9de33d73bddff0622fa98fddad2f9a38bf1 100644
--- a/include/management/columns/class_Column.inc
+++ b/include/management/columns/class_Column.inc
@@ -100,9 +100,8 @@ class Column
     }
   }
 
-  function getRowClasses(ListingEntry $entry)
+  function fillRowClasses(&$classes, ListingEntry $entry)
   {
-    return array();
   }
 
   function renderCell(ListingEntry $entry)
diff --git a/plugins/admin/users/class_userManagement.inc b/plugins/admin/users/class_userManagement.inc
index 85d2ba6eb35bead0137aeb1c69c9f4664d70b40a..a8e2b6872f88ae21612199ebb81ec4dcc9bd3bea 100644
--- a/plugins/admin/users/class_userManagement.inc
+++ b/plugins/admin/users/class_userManagement.inc
@@ -68,13 +68,10 @@ class LockAction extends Action
     );
   }
 
-  function getRowClasses(ListingEntry $entry)
+  function fillRowClasses(&$classes, ListingEntry $entry)
   {
-    $lockStatus = $this->isLocked($entry);
-    if ($lockStatus === TRUE) {
-      return array('entry-locked');
-    } else {
-      return array();
+    if ($this->isLocked($entry) === TRUE) {
+      $classes[] = 'entry-locked';
     }
   }