Index: /trunk/BNC/RTCM/RTCM2.cpp
===================================================================
--- /trunk/BNC/RTCM/RTCM2.cpp	(revision 264)
+++ /trunk/BNC/RTCM/RTCM2.cpp	(revision 265)
@@ -1101,5 +1101,14 @@
 
   epochWeek = refWeek;
-  epochSecs = secs + 3600.0*(floor((refSecs-secs)/3600.0+0.5));
+
+  epochSecs = secs;
+  while (epochSecs < refSecs - 1800) {
+    epochSecs += 3600;
+  }
+  while (epochSecs > refSecs + 1800) {
+    epochSecs -= 3600;
+  }
+
+  ////  epochSecs = secs + 3600.0*(floor((refSecs-secs)/3600.0+0.5));
   
   if (epochSecs<0          ) { epochWeek--; epochSecs+=secsPerWeek; };
