Index: trunk/BNC/src/rinex/reqcanalyze.cpp
===================================================================
--- trunk/BNC/src/rinex/reqcanalyze.cpp	(revision 4693)
+++ trunk/BNC/src/rinex/reqcanalyze.cpp	(revision 4694)
@@ -247,7 +247,12 @@
                                      .arg(obs.satNum, 2, 10, QChar('0'));
   
-        _allObsMap[prn].addObs(obs);
-
-        _obsStat._prnStat[prn]._numObs += 1;
+        t_irc irc = _allObsMap[prn].addObs(obs);
+
+        if (irc == success) {
+          const t_oneObs* newObs = _allObsMap[prn]._oneObsVec.last();
+          if (newObs->_hasL1 && newObs->_hasL2) {
+            _obsStat._prnStat[prn]._numObs += 1;
+          }
+        }
       }
   
@@ -298,5 +303,5 @@
 //  
 ////////////////////////////////////////////////////////////////////////////
-void t_reqcAnalyze::t_allObs::addObs(const t_obs& obs) { 
+t_irc t_reqcAnalyze::t_allObs::addObs(const t_obs& obs) { 
 
   t_oneObs* newObs = new t_oneObs(obs.GPSWeek, obs.GPSWeeks);
@@ -382,7 +387,9 @@
   if (okFlag) {
     _oneObsVec << newObs;
+    return success;
   }
   else {
     delete newObs;
+    return failure;
   }
 }
Index: trunk/BNC/src/rinex/reqcanalyze.h
===================================================================
--- trunk/BNC/src/rinex/reqcanalyze.h	(revision 4693)
+++ trunk/BNC/src/rinex/reqcanalyze.h	(revision 4694)
@@ -146,5 +146,5 @@
       }
     }
-    void addObs(const t_obs& obs);
+    t_irc addObs(const t_obs& obs);
     QVector<t_oneObs*> _oneObsVec;
   };
