[Pkg-running-devel] [openambit] 26/131: Fixed some compile warnings

Christian Perrier bubulle at moszumanska.debian.org
Thu Jul 17 20:19:08 UTC 2014


This is an automated email from the git hooks/post-receive script.

bubulle pushed a commit to branch master
in repository openambit.

commit 6d5896ba6ab6cfd7837da8e66a7e27e696fddb7e
Author: Emil Ljungdahl <emil at kratern.se>
Date:   Mon Jan 6 21:58:46 2014 +0100

    Fixed some compile warnings
---
 src/libambit/libambit.c     |  1 -
 src/libambit/libambit_int.h | 15 +++++++++------
 src/libambit/personal.c     | 13 ++++++++-----
 src/libambit/pmem20.c       |  7 +++----
 4 files changed, 20 insertions(+), 16 deletions(-)

diff --git a/src/libambit/libambit.c b/src/libambit/libambit.c
index 742e3fc..24c7bfb 100644
--- a/src/libambit/libambit.c
+++ b/src/libambit/libambit.c
@@ -248,7 +248,6 @@ int libambit_log_read(ambit_object_t *object, ambit_log_skip_cb skip_cb, ambit_l
 
     uint32_t more = 0x00000400;
 
-    int i=0, j, q;
     bool read_pmem = false;
 
     ambit_log_header_t log_header;
diff --git a/src/libambit/libambit_int.h b/src/libambit/libambit_int.h
index 6e74c70..4fe6e82 100644
--- a/src/libambit/libambit_int.h
+++ b/src/libambit/libambit_int.h
@@ -28,7 +28,7 @@
 
 typedef struct ambit_supported_device_s ambit_supported_device_t;
 
-typedef struct ambit_object_s {
+struct ambit_object_s {
     hid_device *handle;
     uint16_t vendor_id;
     uint16_t product_id;
@@ -52,7 +52,7 @@ typedef struct ambit_object_s {
         uint32_t prev_read;
         uint32_t last_addr;
     } pmem20;
-} ambit_object_t;
+};
 
 enum ambit_commands_e {
     ambit_command_device_info        = 0x0000,
@@ -67,7 +67,7 @@ enum ambit_commands_e {
     ambit_command_log_head           = 0x0b0b,
     ambit_command_log_read           = 0x0b17,
     ambit_command_lock_check         = 0x0b19,
-    ambit_command_lock_set           = 0x0b1a,
+    ambit_command_lock_set           = 0x0b1a
 };
 
 // crc16.c
@@ -108,17 +108,20 @@ static inline uint32_t read32(uint8_t *buf, size_t offset)
 
 static inline uint8_t read8inc(uint8_t *buf, size_t *offset)
 {
-    return buf[(*offset)++];
+    *offset += 1;
+    return buf[(*offset)-1];
 }
 
 static inline uint16_t read16inc(uint8_t *buf, size_t *offset)
 {
-    return (buf[(*offset)++] | (buf[(*offset)++] << 8));
+    *offset += 2;
+    return (buf[(*offset)-2] | (buf[(*offset)-1] << 8));
 }
 
 static inline uint32_t read32inc(uint8_t *buf, size_t *offset)
 {
-    return (buf[(*offset)++] | (buf[(*offset)++] << 8) | (buf[(*offset)++] << 16) | (buf[(*offset)++] << 24));
+    *offset += 4;
+    return (buf[(*offset)-4] | (buf[(*offset)-3] << 8) | (buf[(*offset)-2] << 16) | (buf[(*offset)-1] << 24));
 }
 
 #endif /* __LIBAMBIT_INT_H__ */
diff --git a/src/libambit/personal.c b/src/libambit/personal.c
index 36fc7ac..ccb800d 100644
--- a/src/libambit/personal.c
+++ b/src/libambit/personal.c
@@ -36,10 +36,9 @@
 int libambit_personal_settings_parse(uint8_t *data, size_t datalen, ambit_personal_settings_t *settings)
 {
     size_t offset = 0;
-    int i;
 
     // Check that data is long enough
-    if (datalen < 137) {
+    if (datalen < 132) {
         return -1;
     }
 
@@ -111,9 +110,13 @@ int libambit_personal_settings_parse(uint8_t *data, size_t datalen, ambit_person
     offset = 0x80;
     settings->bikepod_calibration = read16inc(data, &offset);
     settings->bikepod_calibration2 = read16inc(data, &offset);
-    settings->bikepod_calibration3 = read16inc(data, &offset);
-    settings->footpod_calibration = read16inc(data, &offset);
-    settings->automatic_bikepower_calib = read8inc(data, &offset);
+
+    if (datalen >= 137) {
+        // Only Ambit 2 got this!
+        settings->bikepod_calibration3 = read16inc(data, &offset);
+        settings->footpod_calibration = read16inc(data, &offset);
+        settings->automatic_bikepower_calib = read8inc(data, &offset);
+    }
 
     return 0;
 }
diff --git a/src/libambit/pmem20.c b/src/libambit/pmem20.c
index 375d7ca..1b6e474 100644
--- a/src/libambit/pmem20.c
+++ b/src/libambit/pmem20.c
@@ -106,7 +106,7 @@ int libambit_pmem20_deinit(ambit_object_t *object)
 
 int libambit_pmem20_next_header(ambit_object_t *object, ambit_log_header_t *log_header)
 {
-    int ret = -1, tmp_ret;
+    int ret = -1;
     size_t buffer_offset;
     uint16_t tmp_len;
 
@@ -122,7 +122,7 @@ int libambit_pmem20_next_header(ambit_object_t *object, ambit_log_header_t *log_
     if (read_upto(object, object->pmem20.current.next, PMEM20_LOG_HEADER_MIN_LEN) == 0) {
         buffer_offset = (object->pmem20.current.next - PMEM20_LOG_START);
         // First check that header seems to be correctly present
-        if (strncmp(object->pmem20.buffer + buffer_offset, "PMEM", 4) == 0) {
+        if (strncmp((char*)object->pmem20.buffer + buffer_offset, "PMEM", 4) == 0) {
             object->pmem20.current.current = object->pmem20.current.next;
             buffer_offset += 4;
             object->pmem20.current.next = read32inc(object->pmem20.buffer, &buffer_offset);
@@ -151,7 +151,7 @@ ambit_log_entry_t *libambit_pmem20_read_entry(ambit_object_t *object)
     uint16_t tmp_len;
     size_t buffer_offset, sample_count = 0, i;
     ambit_log_entry_t *log_entry;
-    ambit_log_sample_t *last_periodic = NULL, *utcsource = NULL, *gpsbase = NULL, *altisource = NULL;
+    ambit_log_sample_t *last_periodic = NULL, *utcsource = NULL, *altisource = NULL;
     ambit_date_time_t utcbase;
     uint32_t altisource_index = 0;
     uint32_t last_base_lat = 0, last_base_long = 0;
@@ -270,7 +270,6 @@ ambit_log_entry_t *libambit_pmem20_read_entry(ambit_object_t *object)
 int libambit_pmem20_parse_header(uint8_t *data, size_t datalen, ambit_log_header_t *log_header)
 {
     size_t offset = 0;
-    int i;
 
     // Check that header is long enough to be parsed correctly
     if (datalen < 129) {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-running/openambit.git



More information about the Pkg-running-devel mailing list