Index: /branches/eam_branches/ipp-20110213/psphot/src/psphotGuessModels.c
===================================================================
--- /branches/eam_branches/ipp-20110213/psphot/src/psphotGuessModels.c	(revision 30866)
+++ /branches/eam_branches/ipp-20110213/psphot/src/psphotGuessModels.c	(revision 30867)
@@ -189,7 +189,13 @@
 # endif
 
-        useMoments = (useMoments && source->moments);          // can't if there are no moments
-        useMoments = (useMoments && source->moments->nPixels); // can't if the moments were not measured
-        useMoments = (useMoments && !(source->mode & PM_SOURCE_MODE_MOMENTS_FAILURE)); // can't if the moments failed...
+	float dX = source->moments->Mx - source->peak->xf;
+	float dY = source->moments->My - source->peak->yf;
+	float dR = hypot(dX, dY);
+
+        useMoments = useMoments && source->moments;          // can't if there are no moments
+        useMoments = useMoments && source->moments->nPixels; // can't if the moments were not measured
+        useMoments = useMoments && !(source->mode & PM_SOURCE_MODE_MOMENTS_FAILURE); // can't if the moments failed...
+	useMoments = useMoments && ((dR < 1.5) || (source->mode & PM_SOURCE_MODE_SATSTAR));
+	// only use the moments position if the moment-peak offset is small or the star is saturated
 
         float Xo, Yo;
