diff --git a/lsmtool/operations/_filter.py b/lsmtool/operations/_filter.py
index e11658e97d1f6fd1939f3121c9f0143631f1907f..4f840ab33ac6763297e89e797d19dcc34160ff12 100644
--- a/lsmtool/operations/_filter.py
+++ b/lsmtool/operations/_filter.py
@@ -482,11 +482,11 @@ def getMaskValues(mask, RARad, DecRad):
         (a, b, _, _) = maskdata.toworld([0, 0, 0, 0])
         (_, _, pixY, pixX) = maskdata.topixel([a, b, decRad, raRad])
         try:
-            if maskval[int(pixY), int(pixX)]:
+            if maskval[int(pixY), int(pixX)] and pixX >= 0 and pixY >=0:
                 vals.append(True)
             else:
                 vals.append(False)
-        except:
+        except IndexError:
             vals.append(False)
 
     return np.array(vals)