Index: branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/AstromOffsetMapUtils.c
===================================================================
--- branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/AstromOffsetMapUtils.c	(revision 37697)
+++ branches/eam_branches/ipp-20140904/Ohana/src/libdvo/src/AstromOffsetMapUtils.c	(revision 37698)
@@ -169,9 +169,4 @@
 int AstromOffsetTableNewMap (AstromOffsetTable *table, int Nx, int Ny, Image *image) {
 
-  int Nmap = table->Nmap;
-
-  table->Nmap++;
-  REALLOCATE (table->map, AstromOffsetMap *, table->Nmap);
-
   off_t i;
   if (image->imageID > table->MaxImageID) {
@@ -186,8 +181,13 @@
   if (seq != -1) {
     // already assigned (but not used)
-    // XXX this is probably wrong : I need to mark failed maps so they are not saved.
+    AstromOffsetMapSetOrder (table->map[seq], Nx, Ny, image);
     image[0].coords.offsetMap = table->map[seq];    
     return TRUE;
   }
+
+  int Nmap = table->Nmap;
+
+  table->Nmap++;
+  REALLOCATE (table->map, AstromOffsetMap *, table->Nmap);
 
   myAssert (table->imageIDtoTableSeq[image->imageID] == -1, "table IDtoSeq not initiazed or image collision");
