summaryrefslogtreecommitdiff
path: root/driver_nmea2000.c
diff options
context:
space:
mode:
authorReinhard Arlt <reinhard.arlt@t-online.de>2015-02-01 14:30:02 +0100
committerReinhard Arlt <reinhard.arlt@t-online.de>2015-02-01 14:30:02 +0100
commit257f37149d82bb15db5a4bedc7750943785d1742 (patch)
tree45bb44b379abf43a27a067f98580c21ca137eb62 /driver_nmea2000.c
parentdb26270fd7158d0416bea6cda8f7a2b2be5fd695 (diff)
downloadgpsd-257f37149d82bb15db5a4bedc7750943785d1742.tar.gz
Used scale_int() in all places.
Diffstat (limited to 'driver_nmea2000.c')
-rw-r--r--driver_nmea2000.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/driver_nmea2000.c b/driver_nmea2000.c
index d74233b4..cab2ec4f 100644
--- a/driver_nmea2000.c
+++ b/driver_nmea2000.c
@@ -531,8 +531,8 @@ static gps_mask_t hnd_129039(unsigned char *bu, int len, PGN *pgn, struct gps_de
"pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit);
if (decode_ais_header(session->context, bu, len, ais, 0xffffffffU) != 0) {
- ais->type18.lon = (int) (getles32(bu, 5) * 0.06);
- ais->type18.lat = (int) (getles32(bu, 9) * 0.06);
+ ais->type18.lon = (int) scale_int(getles32(bu, 5), (int64_t)(SHIFT32 *.06L));
+ ais->type18.lat = (int) scale_int(getles32(bu, 9), (int64_t)(SHIFT32 *.06L));
ais->type18.accuracy = (bool) ((bu[13] >> 0) & 0x01);
ais->type18.raim = (bool) ((bu[13] >> 1) & 0x01);
ais->type18.second = (unsigned int) ((bu[13] >> 2) & 0x3f);
@@ -573,8 +573,8 @@ static gps_mask_t hnd_129040(unsigned char *bu, int len, PGN *pgn, struct gps_de
uint16_t length, beam, to_bow, to_starboard;
int l;
- ais->type19.lon = (int) (getles32(bu, 5) * 0.06);
- ais->type19.lat = (int) (getles32(bu, 9) * 0.06);
+ ais->type19.lon = (int) scale_int(getles32(bu, 5), (int64_t)(SHIFT32 *.06L));
+ ais->type19.lat = (int) scale_int(getles32(bu, 9), (int64_t)(SHIFT32 *.06L));
ais->type19.accuracy = (bool) ((bu[13] >> 0) & 0x01);
ais->type19.raim = (bool) ((bu[13] >> 1) & 0x01);
ais->type19.second = (unsigned int) ((bu[13] >> 2) & 0x3f);
@@ -725,8 +725,8 @@ static gps_mask_t hnd_129798(unsigned char *bu, int len, PGN *pgn, struct gps_de
"pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit);
if (decode_ais_header(session->context, bu, len, ais, 0xffffffffU) != 0) {
- ais->type9.lon = (int) (getles32(bu, 5) * 0.06);
- ais->type9.lat = (int) (getles32(bu, 9) * 0.06);
+ ais->type9.lon = (int) scale_int(getles32(bu, 5), (int64_t)(SHIFT32 *.06L));
+ ais->type9.lat = (int) scale_int(getles32(bu, 9), (int64_t)(SHIFT32 *.06L));
ais->type9.accuracy = (bool) ((bu[13] >> 0) & 0x01);
ais->type9.raim = (bool) ((bu[13] >> 1) & 0x01);
ais->type9.second = (unsigned int) ((bu[13] >> 2) & 0x3f);