Index: /trunk/BNS/bnsutils.cpp
===================================================================
--- /trunk/BNS/bnsutils.cpp	(revision 860)
+++ /trunk/BNS/bnsutils.cpp	(revision 861)
@@ -98,12 +98,12 @@
 void mjdFromDateAndTime(const QDateTime& dateTime, int& mjd, double& dayfrac) {
 
-  double mjddec = dateTime.date().toJulianDay() - 2400000.5 + 
-                   (dateTime.time().hour() +
-                    (dateTime.time().minute() +
-                     (dateTime.time().second() + 
-                      dateTime.time().msec() / 1000.0) / 60.0) / 60.0) / 24.0;
-
-  mjd     = int(mjddec);
-  dayfrac = mjddec - mjd;
+  const static QDate zeroDate(1858, 11, 17);
+
+  mjd     = zeroDate.daysTo(dateTime.date());
+
+  dayfrac = (dateTime.time().hour() +
+             (dateTime.time().minute() +
+              (dateTime.time().second() + 
+               dateTime.time().msec() / 1000.0) / 60.0) / 60.0) / 24.0;
 }
 
