Index: trunk/BNC/bncpppclient.cpp
===================================================================
--- trunk/BNC/bncpppclient.cpp	(revision 2267)
+++ trunk/BNC/bncpppclient.cpp	(revision 2268)
@@ -225,8 +225,10 @@
 
   if (_eph.contains(prn)) {
+    int ww  = gloeph.GPSWeek;
+    int tow = gloeph.GPSTOW; 
+    updatetime(&ww, &tow, gloeph.tb*1000, 0);  // Moscow -> GPS
     t_ephGlo* ee = static_cast<t_ephGlo*>(_eph.value(prn));
-    if ( (ee->GPSweek()  <  gloeph.GPSWeek) || 
-         (ee->GPSweek()  == gloeph.GPSWeek &&  
-          ee->GPSweeks() <  gloeph.GPSTOW) ) {  
+    if (ee->GPSweek() < ww || 
+        (ee->GPSweek()  == ww &&  ee->GPSweeks() <  tow)) {  
       ee->set(&gloeph);
     }
