Index: trunk/ippTools/src/p2pendingToDone.c
===================================================================
--- trunk/ippTools/src/p2pendingToDone.c	(revision 5881)
+++ trunk/ippTools/src/p2pendingToDone.c	(revision 6060)
@@ -2,46 +2,51 @@
 
 // select pending frames (exposure+images) which are done/not done
-psArray *p2pendingToDone (p2SearchConfig *config, psArray *pendingFrames) {
+psArray *p2pendingToDone (p2Config *config, psArray *pendingFrames) {
 
-    psArray *doneFrames = psArrayAlloc (frames->n);
+    psArray *doneFrames = psArrayAlloc(pendingFrames->n);
     doneFrames->n = 0;
 
     for (int i = 0; i < pendingFrames->n; i++) {
-	ppPendingFrame *pendingFrame = pendingFrames->data[i];
-	if (pendingFrame->exposure->state != P2_STATE_DONE) continue;
+        p2PendingFrame *pendingFrame = pendingFrames->data[i];
+//	if (pendingFrame->exposure->state != P2_STATE_DONE) continue;
 
-	p2DoneExposure *doneExposure = p2DoneExposureAlloc ();
-	strcpy (doneExposure->expID, pendingFrame->exposure->expID);
-	doneExposure->class = pendingFrame->exposure->class;
-	doneExposure->Nclass = pendingFrame->exposure->Nclass;
-	doneExposure->Ndone = pendingFrame->exposure->Nclass;
-	doneExposure->P1version = pendingFrame->exposure->P1version;
-	doneExposure->P2version = pendingFrame->exposure->P2version;
-	doneExposure->state = P2_STATE_DONE;
+	p2DoneExpRow *doneExposure = p2DoneExpRowAlloc(
+	    pendingFrame->exposure->exp_id,
+	    pendingFrame->exposure->class,
+	    pendingFrame->exposure->nclass,
+	    pendingFrame->exposure->nclass, // XXX ndone is uneeded?
+	    pendingFrame->exposure->p1_version,
+	    pendingFrame->exposure->p2_version
+	//doneExposure->state = P2_STATE_DONE;
+    );
 
 	psArray *doneImages = psArrayAlloc (pendingFrame->images->n);
 	doneImages->n = 0;
 	for (int j = 0; j < pendingFrame->images->n; j++) {
-	    ppPendingImage *pendingImage = pendingFrame->images->data[j];
+	    p2PendingImfileRow *pendingImage = pendingFrame->images->data[j];
+
+        /*
 	    if (pendingImage->state != P2_STATE_DONE) {
 		psAbort ("p2search", "programming error!");
 	    }
+        */
 
-	    p2DoneImage *doneImage = p2DoneImageAlloc ();
+	    p2DoneImfileRow *doneImage = p2DoneImfileRowAlloc(
+	        pendingImage->exp_id,
+	        pendingImage->class,
+	        pendingImage->class_id,
+	        pendingImage->p1_version,
+	        pendingImage->p2_version,
+            "", // recipe
+            "", // stats
+	        pendingImage->url
+        );
 
-	    strcpy (doneImage->expID, pendingImage->expID);
-	    doneImage->P2version = pendingImage->P2version;
-	    doneImage->class = pendingImage->class;
-	    strcpy (doneImage->classID, pendingImage->classID);
-	    strcpy (doneImage->urlroot, pendingImage->urlroot);
-	    strcpy (doneImage->input,   pendingImage->input);
-	    strcpy (doneImage->output,  pendingImage->output);
-	    strcpy (doneImage->log,     pendingImage->log);
-	    strcpy (doneImage->smf,     pendingImage->smf);
-	    doneImage->state = P2_STATE_DONE;
 	    psArrayAdd (doneImages, 100, doneImage);
 	}
 	
-	p2DoneFrame *doneFrame = p2DoneFrameAlloc (doneExposure, doneImages);
+    // XXX FIXME
+	p2DoneFrame *doneFrame = p2DoneFrameAlloc(doneExposure, doneImages);
+
 	psArrayAdd (doneFrames, 100, doneFrame);
     }
