Index: trunk/ppStack/src/ppStackCamera.c
===================================================================
--- trunk/ppStack/src/ppStackCamera.c	(revision 13489)
+++ trunk/ppStack/src/ppStackCamera.c	(revision 13493)
@@ -24,4 +24,5 @@
     }
     psArray *images = psStringSplitArray(imageList, "\n", false); // The image filenames
+    psFree(imageList);
 
     psString maskList = psSlurpFilename(maskName); // Contents of mask list
@@ -31,4 +32,5 @@
     }
     psArray *masks = psStringSplitArray(maskList, "\n", false); // The mask filenames
+    psFree(maskList);
     if (images->n != masks->n) {
         psError(PS_ERR_BAD_PARAMETER_VALUE, true,
@@ -57,5 +59,5 @@
 
         psArray *imageFiles = psArrayAlloc(1); // Array of filenames for this FPA
-        imageFiles->data[0] = image;
+        imageFiles->data[0] = psMemIncrRefCounter(image);
         psMetadataAddArray(config->arguments, PS_LIST_TAIL, "IMAGE.FILENAMES", PS_META_REPLACE,
                            "Filenames of image files", imageFiles);
@@ -63,6 +65,5 @@
 
         bool found = false;             // Found the file?
-        pmFPAfile *imageFile = pmFPAfileDefineFromArgs(&found, config, "PPSTACK.INPUT",
-                                                       "IMAGE.FILENAMES", true);
+        pmFPAfile *imageFile = pmFPAfileDefineFromArgs(&found, config, "PPSTACK.INPUT", "IMAGE.FILENAMES");
         if (!imageFile || !found) {
             psError(PS_ERR_UNKNOWN, false, "Unable to define file from image %d (%s)", i, image);
@@ -79,10 +80,12 @@
 
         psArray *maskFiles = psArrayAlloc(1); // Array of filenames for this FPA
-        maskFiles->data[0] = mask;
+        maskFiles->data[0] = psMemIncrRefCounter(mask);
         psMetadataAddArray(config->arguments, PS_LIST_TAIL, "MASK.FILENAMES", PS_META_REPLACE,
                            "Filenames of mask files", maskFiles);
+        psFree(maskFiles);
+
         found = false;
         pmFPAfile *maskFile = pmFPAfileBindFromArgs(&found, imageFile, config, "PPSTACK.INPUT.MASK",
-                                                    "MASK.FILENAMES", true);
+                                                    "MASK.FILENAMES");
         if (!maskFile || !found) {
             psError(PS_ERR_UNKNOWN, false, "Unable to define file from mask %d (%s)", i, mask);
@@ -102,4 +105,7 @@
 
     psMetadataAddS32(config->arguments, PS_LIST_TAIL, "INPUTS.NUM", 0, "Number of input files", images->n);
+
+    psFree(images);
+    psFree(masks);
 
     // Output image
