Index: trunk/BNC/src/combination/bnccomb.cpp
===================================================================
--- trunk/BNC/src/combination/bnccomb.cpp	(revision 10078)
+++ trunk/BNC/src/combination/bnccomb.cpp	(revision 10081)
@@ -439,4 +439,8 @@
   QMutexLocker locker(&_mutex);
   const double outWait = 1.0 * _cmbSampl;
+  int    currentWeek = 0;
+  double currentSec  = 0.0;
+  currentGPSWeeks(currentWeek, currentSec);
+  bncTime currentTime(currentWeek, currentSec);
 
   // Loop over all observations (possible different epochs)
@@ -453,9 +457,6 @@
     // Check regarding current time
     // ----------------------------
-    int    currentWeek = 0;
-    double currentSec  = 0.0;
-    currentGPSWeeks(currentWeek, currentSec);
-    bncTime currentTime(currentWeek, currentSec);
-    if (newClk->_time >= currentTime) {
+    if ((newClk->_time >= currentTime) ||        // future time stamp
+        (currentTime - newClk->_time) > 60.0) {  // very old data sets
       delete newClk;
       continue;
@@ -535,5 +536,5 @@
   // Make sure the buffer does not grow beyond any limit
   // ---------------------------------------------------
-  const unsigned MAX_EPODATA_SIZE = 20;
+  const unsigned MAX_EPODATA_SIZE = 10;
   if (_epoClkData.size() > MAX_EPODATA_SIZE) {
     delete _epoClkData.front();
@@ -553,5 +554,5 @@
     bncTime epoTime = _epoClkData.front()->_time;
 
-    if (fabs(epoTime - _lastClkCorrTime) > 60.0) {
+    if ((currentTime - epoTime) > 60.0) {
       delete _epoClkData.front();
       _epoClkData.pop_front();
@@ -1499,5 +1500,5 @@
       acName = AC->name;
       out << "Provider ID changed: AC " << AC->name.toLatin1().data() << " "
-//          << _resTime.datestr().c_str() << " " << _resTime.timestr().c_str()
+          << _resTime.datestr().c_str() << " " << _resTime.timestr().c_str()
           << "\n";
       break;
