Index: trunk/psLib/src/imageops/psImageInterpolate.c
===================================================================
--- trunk/psLib/src/imageops/psImageInterpolate.c	(revision 31446)
+++ trunk/psLib/src/imageops/psImageInterpolate.c	(revision 34089)
@@ -461,4 +461,10 @@
     }
 
+#define INTERPOLATE_CHECK() \
+    if (xMin < 0) { /* XXX warn or error? */ } \
+    if (yMin < 0) { /* XXX warn or error? */ } \
+    if (xMax >= image->numCols) { /* XXX warn or error? */ } \
+    if (yMax >= image->numRows) { /* XXX warn or error? */ } \
+
 // Determine the result of the interpolation after all the math has been done
 static psImageInterpolateStatus interpolateResult(const psImageInterpolation *interp,
@@ -523,4 +529,5 @@
     }
     INTERPOLATE_RANGE();
+    INTERPOLATE_CHECK();
 
     // Get the appropriate kernels
@@ -779,4 +786,5 @@
     }
     INTERPOLATE_RANGE();
+    INTERPOLATE_CHECK();
 
     // Get the appropriate kernels
@@ -989,4 +997,5 @@
     INTERPOLATE_SETUP(x, y);
     xExact = yExact = false;
+    if (xExact && yExact) { /* possible alternative */ }
 
     psF32 xKernel[size], yKernel[size]; // Interpolation kernels
@@ -1038,4 +1047,5 @@
     INTERPOLATE_SETUP(x, y);
     xExact = yExact = false;
+    if (xExact && yExact) { /* possible alternative */ }
 
     psF32 xKernel[size], yKernel[size]; // Interpolation kernels
