]> git.tdb.fi Git - ext/subsurface.git/commitdiff
update UEMIS date_time parsing
authorDirk Hohndel <dirk@hohndel.org>
Tue, 6 Sep 2011 01:08:16 +0000 (18:08 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 6 Sep 2011 03:41:59 +0000 (20:41 -0700)
Looks like Linus misinterpreted the first UEMIS xml files I sent him.

The date_time appears to be in local time - so the time zone info can be
ignored (that seems strange, but it worked for the dives I tested it
with)

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
parse-xml.c

index 90fdb1ad1ea751fe29cf0045e1acc8f4f4e41b7f..36db7e74453dcd8b6f1f4796daab1df6ae51c367 100644 (file)
@@ -648,7 +648,7 @@ static void uemis_date_time(char *buffer, void *_when)
 
         switch (integer_or_float(buffer, &val)) {
         case FLOAT:
-               *when = (val.fp - 40587.5) * 86400;
+               *when = (val.fp - 40587) * 86400;
                break;
        default:
                fprintf(stderr, "Strange julian date: %s", buffer);
@@ -665,10 +665,14 @@ static void uemis_date_time(char *buffer, void *_when)
  */
 static void uemis_time_zone(char *buffer, void *_when)
 {
+#if 0 /* seems like this is only used to display it correctly
+       * the stored time appears to be UTC */
+
        time_t *when = _when;
        signed char tz = atoi(buffer);
 
        *when += tz * 3600;
+#endif
 }
 
 /* 0 - air ; 1 - nitrox1 ; 2 - nitrox2 ; 3 = nitrox3 */