diff --git a/src/BizHawk.Client.Common/DisplayManager/Filters/BaseFilter.cs b/src/BizHawk.Client.Common/DisplayManager/Filters/BaseFilter.cs
index a373513ad3..5d18849a5b 100644
--- a/src/BizHawk.Client.Common/DisplayManager/Filters/BaseFilter.cs
+++ b/src/BizHawk.Client.Common/DisplayManager/Filters/BaseFilter.cs
@@ -151,7 +151,13 @@ namespace BizHawk.Client.Common.Filters
 
 		private IOSurfaceInfo FindIOSurfaceInfo(string channel, SurfaceDirection direction)
 		{
-			return _ioSurfaceInfos.Find(iosi => iosi.Channel == channel && iosi.SurfaceDirection == direction);
+			foreach (var iosi in _ioSurfaceInfos)
+			{
+				if (iosi.Channel == channel && iosi.SurfaceDirection == direction)
+					return iosi;
+			}
+
+			return null;
 		}
 
 		public class IOSurfaceInfo
@@ -167,4 +173,4 @@ namespace BizHawk.Client.Common.Filters
 			Input, Output
 		}
 	}
-}
\ No newline at end of file
+}