Index: trunk/psLib/src/imageops/psImageInterpolate.c
===================================================================
--- trunk/psLib/src/imageops/psImageInterpolate.c	(revision 21288)
+++ trunk/psLib/src/imageops/psImageInterpolate.c	(revision 21290)
@@ -7,6 +7,6 @@
  *  @author Paul Price, IfA
  *
- *  @version $Revision: 1.34 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2009-02-04 20:46:40 $
+ *  @version $Revision: 1.35 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2009-02-04 21:43:11 $
  *
  *  Copyright 2004-2007 Institute for Astronomy, University of Hawaii
@@ -978,4 +978,15 @@
     interpolationKernel(yKernel, yFrac, mode);
 
+    // Need to normalise the kernel, since that's what the interpolation does
+    double xSum = 0.0, ySum = 0.0;
+    for (int i = 0; i < size; i++) {
+        xSum += xKernel[i];
+        ySum += yKernel[i];
+    }
+    for (int i = 0; i < size; i++) {
+        xKernel[i] /= xSum;
+        yKernel[i] /= ySum;
+    }
+
     int min = -size/2, max = (size - 1) / 2; // Range for kernel
     psKernel *kernel = psKernelAlloc(min, max, min, max); // Kernel to return
