diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2010-04-13 14:18:14 -0400 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2010-04-13 14:18:14 -0400 |
commit | ddc34f3c17cab4fe29e1adffad81f006fbf0d632 (patch) | |
tree | 9704f8451717da108587c4e523a107bd71a67c13 /driver_garmin.c | |
parent | acfef8f978a6a95880fb2058bc3fc7e0c4be3de8 (diff) | |
download | gpsd-ddc34f3c17cab4fe29e1adffad81f006fbf0d632.tar.gz |
Properly guard the USB-garmin probe.
Diffstat (limited to 'driver_garmin.c')
-rw-r--r-- | driver_garmin.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/driver_garmin.c b/driver_garmin.c index 5a69c2c7..c3b3b761 100644 --- a/driver_garmin.c +++ b/driver_garmin.c @@ -817,11 +817,15 @@ static void Build_Send_SER_Packet( struct gps_device_t *session, */ static bool garmin_usb_detect(struct gps_device_t *session) { - +#if defined(__linux__) || defined(S_SPLINT_S) FILE *fp = NULL; char buf[256]; bool ok = false; + /* only perform this check if we're looking at a USB-serial device */ + if (session->sourcetype != source_usb) + return false; + /* check for garmin USB serial driver -- very Linux-specific */ if (access("/sys/module/garmin_gps", R_OK) != 0) { gpsd_report(LOG_WARN, "Garmin: garmin_gps Linux USB module not active.\n"); @@ -881,6 +885,9 @@ static bool garmin_usb_detect(struct gps_device_t *session) // expect no return packet !? return true; +#else + return false; +#endif /* __linux__ */ } static void garmin_event_hook(struct gps_device_t *session, event_t event) |