Index: /trunk/BNC/src/PPP/pppClient.cpp
===================================================================
--- /trunk/BNC/src/PPP/pppClient.cpp	(revision 8909)
+++ /trunk/BNC/src/PPP/pppClient.cpp	(revision 8910)
@@ -67,5 +67,5 @@
   }
 
-  if (OPT->_refSatRequired) {
+  if (_opt->_refSatRequired) {
     for (unsigned iSys = 0; iSys < OPT->systems().size(); iSys++) {
       char system = OPT->systems()[iSys];
Index: /trunk/BNC/src/PPP/pppFilter.cpp
===================================================================
--- /trunk/BNC/src/PPP/pppFilter.cpp	(revision 8909)
+++ /trunk/BNC/src/PPP/pppFilter.cpp	(revision 8910)
@@ -38,4 +38,5 @@
   _numSat = 0;
   _obsPool = obsPool;
+  _refPrn  = t_prn();
 }
 
@@ -122,5 +123,7 @@
     for (unsigned iSys = 0; iSys < OPT->systems().size(); iSys++) {
       char system = OPT->systems()[iSys];
-      t_prn refPrn = (_obsPool->getRefSatMapElement(system))->prn();
+      if (OPT->_refSatRequired) {
+        _refPrn = (_obsPool->getRefSatMapElement(system))->prn();
+      }
       vector<t_pppSatObs*> obsVector;
       for (unsigned jj = 0; jj < allObs.size(); jj++) {
@@ -129,5 +132,5 @@
         }
       }
-      if (processSystem(OPT->LCs(system), obsVector, refPrn,
+      if (processSystem(OPT->LCs(system), obsVector, _refPrn,
                         epoch->pseudoObsIono(), preProcessing) != success) {
         return failure;
@@ -140,5 +143,7 @@
   for (unsigned iSys = 0; iSys < OPT->systems().size(); iSys++) {
     char system = OPT->systems()[iSys];
-    t_prn refPrn = (_obsPool->getRefSatMapElement(system))->prn();
+    if (OPT->_refSatRequired) {
+      _refPrn = (_obsPool->getRefSatMapElement(system))->prn();
+    }
     unsigned int num = 0;
     vector<t_pppSatObs*> obsVector;
@@ -150,5 +155,5 @@
     }
     LOG << epoTimeStr << " SATNUM " << system << ' ' << right << setw(2) << num << endl;
-    if (processSystem(OPT->LCs(system), obsVector, refPrn,
+    if (processSystem(OPT->LCs(system), obsVector, _refPrn,
                       epoch->pseudoObsIono(), preProcessing) != success) {
       return failure;
Index: /trunk/BNC/src/PPP/pppFilter.h
===================================================================
--- /trunk/BNC/src/PPP/pppFilter.h	(revision 8909)
+++ /trunk/BNC/src/PPP/pppFilter.h	(revision 8910)
@@ -102,4 +102,5 @@
   bncTime         _firstEpoTime;
   bncTime         _lastEpoTimeOK;
+  t_prn           _refPrn;
 };
 
