Index: trunk/psModules/src/config/pmConfig.c
===================================================================
--- trunk/psModules/src/config/pmConfig.c	(revision 7709)
+++ trunk/psModules/src/config/pmConfig.c	(revision 7754)
@@ -3,6 +3,6 @@
  *  @author PAP, IfA
  *
- *  @version $Revision: 1.28 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-06-28 00:49:13 $
+ *  @version $Revision: 1.29 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-06-29 20:39:56 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -824,22 +824,32 @@
     input->n = 0;
 
-    // load the list of filenames the supplied file (may be a glob: "file*.fits")
+    // load the list of filenames the supplied file
+    // maybe a comma-separated list of words
+    // each word may be a glob: "file*.fits"
     if ((Narg = psArgumentGet (config->argc, config->argv, file))) {
+
+        // select the word after 'file' and split by comma
+        psArgumentRemove (Narg, &config->argc, config->argv);
+        psArray *words = psStringSplitArray (config->argv[Narg], ",", true);
+        psArgumentRemove (Narg, &config->argc, config->argv);
+
+        // parse the word as a glob
         glob_t globList;
-        psArgumentRemove (Narg, &config->argc, config->argv);
-        globList.gl_offs = 0;
-        glob (config->argv[Narg], 0, NULL, &globList);
-
-        if (globList.gl_pathc == 0) {
-            psError(PS_ERR_IO, true, "No match for %s", config->argv[Narg]);
-            return input;
-        }
-
-        for (int i = 0; i < globList.gl_pathc; i++) {
-            char *filename = psStringCopy (globList.gl_pathv[i]);
-            psArrayAdd (input, 16, filename);
-            psFree (filename);
-        }
-        psArgumentRemove (Narg, &config->argc, config->argv);
+        for (int i = 0; i < words->n; i++) {
+            globList.gl_offs = 0;
+            glob (words->data[i], 0, NULL, &globList);
+
+            if (globList.gl_pathc == 0) {
+                psError(PS_ERR_IO, true, "No match for %s", words->data[i]);
+                return input;
+            }
+
+            for (int j = 0; j < globList.gl_pathc; j++) {
+                char *filename = psStringCopy (globList.gl_pathv[j]);
+                psArrayAdd (input, 16, filename);
+                psFree (filename);
+            }
+        }
+        psFree (words);
     }
 
