diff --git a/src/calng/frameselection_utils.py b/src/calng/frameselection_utils.py
index 9b444e56eed897d6781d3c24b5dcfad31baa4a22..edd9b612e052831ebfc12fc6be2e60c3ce3b6b9b 100644
--- a/src/calng/frameselection_utils.py
+++ b/src/calng/frameselection_utils.py
@@ -138,9 +138,9 @@ class FrameselectionFriend:
 
     def get_mask(self, sources):
         if self._enabled and self._arbiter in sources:
-            return np.array(
-                sources[self._arbiter][0]["data.dataFramePattern"], copy=False
-            ).astype(bool, copy=False)
+            return np.asarray(
+                sources[self._arbiter][0]["data.dataFramePattern"], dtype=bool
+            )
         else:
             return None
 
@@ -171,8 +171,7 @@ class FrameselectionFriend:
                 if not arbiter.has(mask_key):
                     # no mask
                     continue
-                mask = np.array(
-                    arbiter[mask_key], dtype=bool, copy=False)
+                mask = np.asarray(arbiter[mask_key], dtype=bool)
 
                 for source, data in correction_sources.items():
                     if not data.has(arg):