Index: /trunk/psModules/src/config/pmConfig.c
===================================================================
--- /trunk/psModules/src/config/pmConfig.c	(revision 7905)
+++ /trunk/psModules/src/config/pmConfig.c	(revision 7906)
@@ -3,6 +3,6 @@
  *  @author PAP, IfA
  *
- *  @version $Revision: 1.32 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-07-06 03:25:50 $
+ *  @version $Revision: 1.33 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-07-14 20:12:20 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -288,5 +288,9 @@
 
     // Load the recipes from the camera file, if appropriate
-    pmConfigReadRecipes(config);
+    if(!pmConfigReadRecipes(config)) {
+        psError(PS_ERR_IO, false, "Failed to read recipes from camera file");
+        psFree(config);
+        return NULL;
+    }
 
     //
@@ -660,4 +664,11 @@
             psMetadataAdd(config->recipes, PS_LIST_TAIL, fileItem->name,
                           PS_DATA_METADATA | PS_META_REPLACE, fileItem->comment, recipe);
+        } else {
+            psError(PS_ERR_IO, false, "Failed to read recipe");
+
+            psFree(recipe);  // Drop reference
+            psFree(recipesIter);
+
+            return false;
         }
         psFree(recipe);                 // Drop reference
@@ -704,9 +715,24 @@
     // Read the recipe file names from the site configuration and camera configuration
     if (!(config->recipesRead & P_PM_RECIPE_SOURCE_SITE)) {
-        loadRecipes(config, config->site, P_PM_RECIPE_SOURCE_SITE, "site configuration");
+        if(!loadRecipes(config, config->site, P_PM_RECIPE_SOURCE_SITE, "site configuration")) {
+            psError(PS_ERR_IO, false, "Failed to read recipes from site config");
+            #if 0     // see comment at end of routine
+
+            return false;
+            #endif
+
+        }
     }
     if (!(config->recipesRead & P_PM_RECIPE_SOURCE_CAMERA)) {
-        loadRecipes(config, config->camera, P_PM_RECIPE_SOURCE_CAMERA, "camera configuration");
-    }
+        if (!loadRecipes(config, config->camera, P_PM_RECIPE_SOURCE_CAMERA, "camera configuration")) {
+            psError(PS_ERR_IO, false, "Failed to read recipes from camera config");
+            #if 0     // see comment at end of routine
+
+            return false;
+            #endif
+
+        }
+    }
+
     if (!(config->recipesRead & P_PM_RECIPE_SOURCE_CL)) {
         // Go through the command-line arguments
@@ -762,5 +788,10 @@
         config->recipesRead |= P_PM_RECIPE_SOURCE_CL;
     }
-
+    /*
+     * We may have seen real errors, but we also get false status returned by valid conditions (e.g. asking a
+     * file for a recipe when none was provided).  For now we'll never signal an error, but this should
+     * be reconsidered ASAP.
+     */
+    psErrorClear();
     return true;
 }
