Index: /trunk/Ohana/src/addstar/include/addstar.h
===================================================================
--- /trunk/Ohana/src/addstar/include/addstar.h	(revision 18426)
+++ /trunk/Ohana/src/addstar/include/addstar.h	(revision 18427)
@@ -117,4 +117,6 @@
 int    PLOT;
 double MAX_CERROR;
+double MIN_FWHM_X;
+double MIN_FWHM_Y;
 
 /* modify server behavior (make this an addstar cleanup mode?) */
Index: /trunk/Ohana/src/addstar/src/ConfigInit.c
===================================================================
--- /trunk/Ohana/src/addstar/src/ConfigInit.c	(revision 18426)
+++ /trunk/Ohana/src/addstar/src/ConfigInit.c	(revision 18427)
@@ -42,4 +42,9 @@
   MAX_CERROR = 0.5; // arcseconds
   ScanConfig (config, "ADDSTAR_MAX_CERROR",     "%lf", 0, &MAX_CERROR);
+
+  MIN_FWHM_X = 0.0; // arcseconds
+  ScanConfig (config, "ADDSTAR_MIN_FWHM_X",     "%lf", 0, &MIN_FWHM_X);
+  MIN_FWHM_Y = 0.0; // arcseconds
+  ScanConfig (config, "ADDSTAR_MIN_FWHM_Y",     "%lf", 0, &MIN_FWHM_Y);
 
   /* used by parse_time to find time-related keywords */
Index: /trunk/Ohana/src/addstar/src/ReadImageHeader.c
===================================================================
--- /trunk/Ohana/src/addstar/src/ReadImageHeader.c	(revision 18426)
+++ /trunk/Ohana/src/addstar/src/ReadImageHeader.c	(revision 18427)
@@ -6,5 +6,5 @@
 
   int Nastro, ccdnum, hour, min, Nx, Ny;
-  double tmp, sec, Cerror, ZeroPt;
+  double tmp, sec, Cerror, ZeroPt, FWHM_X, FWHM_Y;
   char *c, photname[64], line[80];
 
@@ -42,6 +42,17 @@
   Cerror = 0;
   gfits_scan (header, "CERROR", "%lf", 1, &Cerror);
+  FWHM_X = FWHM_Y = 0;
+  gfits_scan (header, "FWHM_X", "%lf", 1, &FWHM_X);
+  gfits_scan (header, "FWHM_Y", "%lf", 1, &FWHM_Y);
   if (((Nastro == 0) || (Cerror > MAX_CERROR)) && !ACCEPT_ASTROM) {
     fprintf (stderr, "bad astrometric solution in header\n");
+    return (FALSE);
+  }
+  if ((MIN_FWHM_X > 0.01) && (FWHM_X < MIN_FWHM_X)) {
+    fprintf (stderr, "bad psf, skipping\n");
+    return (FALSE);
+  }
+  if ((MIN_FWHM_Y > 0.01) && (FWHM_Y < MIN_FWHM_Y)) {
+    fprintf (stderr, "bad psf, skipping\n");
     return (FALSE);
   }
