Index: trunk/psLib/src/fft/psImageFFT.c
===================================================================
--- trunk/psLib/src/fft/psImageFFT.c	(revision 11714)
+++ trunk/psLib/src/fft/psImageFFT.c	(revision 11716)
@@ -6,6 +6,6 @@
 /// @author Robert DeSonia, MHPCC
 ///
-/// @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
-/// @date $Date: 2007-02-08 23:56:02 $
+/// @version $Revision: 1.23 $ $Name: not supported by cvs2svn $
+/// @date $Date: 2007-02-09 00:22:55 $
 ///
 /// Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -149,14 +149,14 @@
     fftwf_free(in);
 
+    // Copy the target pixels into the output
     if (!(*out) || !(*out)->parent) {
         *out = psImageRecycle(*out, origCols, numRows, PS_TYPE_F32);
-    }
-
-    // Copy the target pixels into the output
-    // There's a slight offset --- target has the additional padding required by FFTW,
-    // while the output doesn't.
-    for (int y = 0, index = 0; y < numRows; y++, index += origCols) {
-        memcpy(&(*out)->data.F32[y][0], &target[index], numCols * PSELEMTYPE_SIZEOF(PS_TYPE_F32));
-    }
+        memcpy((*out)->p_rawDataBuffer, target, numRows * origCols * PSELEMTYPE_SIZEOF(PS_TYPE_F32));
+    } else {
+        for (int y = 0, index = 0; y < numRows; y++, index += origCols) {
+            memcpy(&(*out)->data.F32[y][0], &target[index], origCols * PSELEMTYPE_SIZEOF(PS_TYPE_F32));
+        }
+    }
+
     psFree(target);
 
