Index: trunk/pstamp/scripts/pstampparse.pl
===================================================================
--- trunk/pstamp/scripts/pstampparse.pl	(revision 27140)
+++ trunk/pstamp/scripts/pstampparse.pl	(revision 27211)
@@ -191,4 +191,10 @@
 
     my $filter  = $row->{REQFILT};
+    if ($filter) {
+        if (length($filter) == 1) {
+            # allow single character filter cuts to work
+            $filter .= '%';
+        }
+    }
     my $mjd_min = $row->{MJD_MIN};
     my $mjd_max = $row->{MJD_MAX};
@@ -198,4 +204,5 @@
         $data_group = $row->{LABEL};
         $data_group = "null" if !defined $data_group;
+        $row->{DATA_GROUP} = $data_group;
     }
         
@@ -206,4 +213,6 @@
     my $inverse = ($option_mask & $PSTAMP_SELECT_INVERSE) ? 1 : 0;
     $row->{inverse} = $inverse;
+    my $unconvolved = ($option_mask & $PSTAMP_SELECT_UNCONV) ? 1 : 0;
+    $row->{unconvolved} = $unconvolved;
 
     my $skycenter = $row->{skycenter} = ! ($row->{COORD_MASK} & $PSTAMP_CENTER_IN_PIXELS);
@@ -228,4 +237,11 @@
     }
 
+    if (($req_type eq "byexp") and ($stage eq "stack")) {
+        print STDERR "byexp not implemented for stack stage. row: $rownum\n" if $verbose;
+        insertFakeJobForRow($row, 1, $PSTAMP_NOT_IMPLEMENTED);
+        $num_jobs++;
+        next;
+    }
+
     
     # $mode list_uri is a debugging mode (it may used by the http interface)
@@ -273,5 +289,5 @@
     # request specification. An array reference is returned.
     $imageList = locate_images($ipprc, $image_db, $req_type, $stage, $id, $tess_id, $search_component,
-                $inverse, $need_magic, $x, $y, $mjd_min, $mjd_max, $filter, $data_group, $verbose);
+                $option_mask, $need_magic, $x, $y, $mjd_min, $mjd_max, $filter, $data_group, $verbose);
 
     if (!$imageList or !@$imageList) {
@@ -385,5 +401,10 @@
         }
 
-        my $base = basename($image->{path_base});
+        my $base = basename($image->{image});
+        if (! $base =~ /.fits$/ ) {
+            my_die("unexpected image file name found $image->{image}", $PS_EXIT_PROG_ERROR);
+        }
+        $base =~ s/.fits$//;
+            
         # XXX: TODO use filerule for this. I don't have a camera defined here
         if (($stage eq 'chip') and ($image->{camera} eq 'GPC1')) {
@@ -815,4 +836,5 @@
     return 0 if ($r1->{MJD_MAX}  ne $r2->{MJD_MAX});
     return 0 if ($r1->{inverse}  ne $r2->{inverse});
+    return 0 if ($r1->{unconvolved}  ne $r2->{unconvolved});
 
     if (defined($r1->{COMPONENT})) {
