Index: trunk/ippToPsps/src/ippToPsps.c
===================================================================
--- trunk/ippToPsps/src/ippToPsps.c	(revision 29179)
+++ trunk/ippToPsps/src/ippToPsps.c	(revision 29184)
@@ -250,4 +250,14 @@
     psMemSetDeallocator(this, (psFreeFunc)ippToPsps_Destructor);
 
+    // deal with DVO database
+    bool haveDvo = false;
+    for (int i=0;i<*argc; i++) {
+
+        if (strcmp(argv[i], "CATDIR") == 0) {haveDvo = true; break;}
+    }
+    if (haveDvo) this->dvoConfig = dvoConfigRead(argc, argv);
+    else this->dvoConfig = NULL;
+
+    // remaining args
     this->expId = -1;
     this->expName = NULL;
@@ -261,7 +271,5 @@
     this->fitsOut = NULL;
     this->configsDir = NULL;
-    this->dvoConfig = NULL;
     this->config = NULL;
-    this->dvoConfig = dvoConfigRead(argc, argv);
     this->pmconfig = pmConfigRead(argc, argv, NULL);
     this->exitCode = PS_EXIT_SUCCESS;
@@ -299,5 +307,5 @@
         psStringAppend(&this->configsDir, "/stack");
 
-
+    // create filename
     char outputName[100];
     sprintf(outputName, "%08d.FITS", this->expId);
