Index: trunk/psModules/src/pmNonLinear.c
===================================================================
--- trunk/psModules/src/pmNonLinear.c	(revision 2916)
+++ trunk/psModules/src/pmNonLinear.c	(revision 2928)
@@ -5,6 +5,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.9 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-01-05 23:43:58 $
+ *  @version $Revision: 1.10 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-01-07 20:00:34 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -41,7 +41,7 @@
     psS32 j;
 
-    for (i=0;i<(inputReadout->image)->numRows;i++) {
-        for (j=0;j<(inputReadout->image)->numCols;j++) {
-            (inputReadout->image)->data.F32[i][j] = psPolynomial1DEval(input1DPoly, (inputReadout->image)->data.F32[i][j]);
+    for (i=0;i<inputReadout->image->numRows;i++) {
+        for (j=0;j<inputReadout->image->numCols;j++) {
+            inputReadout->image->data.F32[i][j] = psPolynomial1DEval(input1DPoly, inputReadout->image->data.F32[i][j]);
         }
     }
@@ -65,5 +65,4 @@
     PS_IMAGE_CHECK_TYPE(inputReadout->image, PS_TYPE_F32, NULL);
     PS_PTR_CHECK_NULL(inFlux,NULL);
-    psS32 tableSize = inFlux->n;
     if (inFlux->n < 2) {
         psError(PS_ERR_UNKNOWN,true, "pmNonLinearityLookup(): input vector less than 2 elements.  Returning inputReadout image.");
@@ -71,4 +70,5 @@
     }
     PS_PTR_CHECK_NULL(outFlux,NULL);
+    psS32 tableSize = inFlux->n;
     if (inFlux->n != outFlux->n) {
         tableSize = PS_MIN(inFlux->n, outFlux->n);
@@ -87,20 +87,19 @@
 
     x.type.type = PS_TYPE_F32;
-    for (i=0;i<(inputReadout->image)->numRows;i++) {
-        for (j=0;j<(inputReadout->image)->numCols;j++) {
-            x.data.F32 = (inputReadout->image)->data.F32[i][j];
-
+    for (i=0;i<inputReadout->image->numRows;i++) {
+        for (j=0;j<inputReadout->image->numCols;j++) {
+            x.data.F32 = inputReadout->image->data.F32[i][j];
             binNum = p_psVectorBinDisect((psVector *)inFlux, &x);
 
             if (binNum == -2) {
                 // We get here if x is below the table lookup range.
-                (inputReadout->image)->data.F32[i][j] = outFlux->data.F32[0];
+                inputReadout->image->data.F32[i][j] = outFlux->data.F32[0];
                 numPixels++;
 
             } else if (binNum == -1) {
                 // We get here if x is above the table lookup range.
-                (inputReadout->image)->data.F32[i][j] = outFlux->data.F32[tableSize-1];
+                inputReadout->image->data.F32[i][j] = outFlux->data.F32[tableSize-1];
+                numPixels++;
 
-                numPixels++;
             } else if (binNum < -2) {
                 // We get here if there was some other problem.
@@ -112,6 +111,6 @@
                 slope = (outFlux->data.F32[binNum+1] - outFlux->data.F32[binNum]) /
                         (inFlux->data.F32[binNum+1]  - inFlux->data.F32[binNum]);
-                (inputReadout->image)->data.F32[i][j] = outFlux->data.F32[binNum] +
-                                                        ((x.data.F32 - inFlux->data.F32[binNum]) * slope);
+                inputReadout->image->data.F32[i][j] = outFlux->data.F32[binNum] +
+                                                      ((x.data.F32 - inFlux->data.F32[binNum]) * slope);
             }
         }
