Index: trunk/ippTools/src/chiptoolConfig.c
===================================================================
--- trunk/ippTools/src/chiptoolConfig.c	(revision 6155)
+++ trunk/ippTools/src/chiptoolConfig.c	(revision 6161)
@@ -7,9 +7,13 @@
 
     // Parse the configurations (re-org a la ppImage)
-    config->site = NULL;            // Site configuration
-    config->camera = NULL;          // Camera configuration (unused)
-    config->recipe = NULL;          // Recipe configuration
-    config->camera_name = NULL;     // Camera name
-    config->filter = NULL;          // Filter name
+    config->site    = NULL;             // Site configuration
+    config->camera  = NULL;             // Camera configuration (unused)
+    config->recipe  = NULL;             // Recipe configuration
+    config->camera_name = NULL;         // Camera name
+    config->filter  = NULL;             // Filter name
+    config->exp_id  = NULL;             // Exposure ID
+    config->class   = NULL;             
+    config->class_id = NULL;           
+    config->url     = NULL;
 
     if (! pmConfigRead(&config->site, &config->camera, &config->recipe, &argc, argv, RECIPE)) {
@@ -94,8 +98,4 @@
     config->camera_name = psMetadataLookupStr(&status, config->arguments,
         "-inst");
-    // XXX why is "" being returned when -inst is missing?
-    if (strcmp(config->camera_name, "") == 0) {
-        config->camera_name = NULL;
-    }
     config->exp_id = psMetadataLookupStr(&status, config->arguments, "-exp_id");
     config->class = psMetadataLookupStr(&status, config->arguments, "-class");
@@ -103,4 +103,16 @@
         "-class_id");
     config->url = psMetadataLookupStr(&status, config->arguments, "-url");
+
+    // XXX why is "" being returned when -[foo] isn't specified?
+#define EMPTY_TO_NULL_STRING(var) \
+    if (strcmp(var, "") == 0) { \
+        var = NULL; \
+    }
+
+    EMPTY_TO_NULL_STRING(config->camera_name);
+    EMPTY_TO_NULL_STRING(config->exp_id);
+    EMPTY_TO_NULL_STRING(config->class);
+    EMPTY_TO_NULL_STRING(config->class_id);
+    EMPTY_TO_NULL_STRING(config->url);
 
     // add the input and output images to the arguments list
