diff options
author | Charles Curley <charlescurley@charlescurley.com> | 2018-10-21 17:21:01 -0600 |
---|---|---|
committer | Charles Curley <charlescurley@charlescurley.com> | 2018-10-21 17:21:01 -0600 |
commit | c512d1ddf49250932101f9d3b0f3e87c5928be8a (patch) | |
tree | 88ecb6a22adbe8f4fbefa0b4aef9f1b50a84c186 | |
parent | f6db3ba495964985a0e7ddddaec6a8e070d70d85 (diff) | |
download | navit-c512d1ddf49250932101f9d3b0f3e87c5928be8a.tar.gz |
Upgrade vehicle:gpsd. Upgrading the API for gpsd version 3.18 and higher. Recommend you use 3.18.1, not 3.18. This change should be transparent to all.
It might be nice if we could detect gpsd versions at run time, but that's for later if ever.
modified: navit/vehicle/gpsd/vehicle_gpsd.c
-rw-r--r-- | navit/vehicle/gpsd/vehicle_gpsd.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/navit/vehicle/gpsd/vehicle_gpsd.c b/navit/vehicle/gpsd/vehicle_gpsd.c index 95324f324..4746b2195 100644 --- a/navit/vehicle/gpsd/vehicle_gpsd.c +++ b/navit/vehicle/gpsd/vehicle_gpsd.c @@ -325,7 +325,11 @@ static void vehicle_gpsd_io(struct vehicle_priv *priv) { int read_result; /* Read until EOF, in case we are lagging behind. * No point in processing old GPS reports. */ +#if GPSD_API_MAJOR_VERSION >= 7 /* API change. gpsd verion 3.18 and subsequent. */ + while((read_result=gps_read(priv->gps,NULL,0))>0); +#else /* GPSD_API_MAJOR_VERSION >= 7 */ while((read_result=gps_read(priv->gps))>0); +#endif /* GPSD_API_MAJOR_VERSION >= 7 */ if(read_result==-1) { dbg(lvl_error,"gps_poll failed"); vehicle_gpsd_close(priv); @@ -335,13 +339,13 @@ static void vehicle_gpsd_io(struct vehicle_priv *priv) { buf = gps_data(priv->gps); vehicle_gpsd_callback(priv->gps,buf,strlen(buf)); } -#else +#else /* GPSD_API_MAJOR_VERSION >= 5 */ if (gps_poll(priv->gps)) { dbg(lvl_error,"gps_poll failed"); vehicle_gpsd_close(priv); vehicle_gpsd_open(priv); } -#endif +#endif /* GPSD_API_MAJOR_VERSION >= 5 */ } } |