Index: branches/BNC_2.12/src/PPP/pppClient.cpp
===================================================================
--- branches/BNC_2.12/src/PPP/pppClient.cpp	(revision 8444)
+++ branches/BNC_2.12/src/PPP/pppClient.cpp	(revision 8446)
@@ -204,15 +204,21 @@
     for (unsigned ii = 0; ii < obsVector.size(); ii++) {
       const t_pppSatObs* satObs = obsVector.at(ii);
-      if (satObs->prn().system() == 'G') {
-        if (tLC == t_lc::dummy) {
-          tLC = satObs->isValid(t_lc::cIF) ? t_lc::cIF : t_lc::c1;
+      if (tLC == t_lc::dummy) {
+        if (satObs->isValid(t_lc::cIF)) {
+          tLC = t_lc::cIF;
         }
-        if ( satObs->isValid(tLC) && (!satObs->modelSet() || satObs->eleSat() >= OPT->_minEle) ) {
-          ++iObs;
-          BB[iObs][0] = satObs->xc()[0];
-          BB[iObs][1] = satObs->xc()[1];
-          BB[iObs][2] = satObs->xc()[2];
-          BB[iObs][3] = satObs->obsValue(tLC) - satObs->cmpValueForBanc(tLC);
+        else if (satObs->isValid(t_lc::c1)) {
+          tLC = t_lc::c1;
         }
+        else if (satObs->isValid(t_lc::c2)) {
+          tLC = t_lc::c2;
+        }
+      }
+      if ( satObs->isValid(tLC) && (!satObs->modelSet() || satObs->eleSat() >= OPT->_minEle) ) {
+        ++iObs;
+        BB[iObs][0] = satObs->xc()[0];
+        BB[iObs][1] = satObs->xc()[1];
+        BB[iObs][2] = satObs->xc()[2];
+        BB[iObs][3] = satObs->obsValue(tLC) - satObs->cmpValueForBanc(tLC);
       }
     }
