浏览代码

fix minmea_scan("f") when no decimal point is present

Kosma Moczek 11 年之前
父节点
当前提交
1e802f6d00
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      minmea.c

+ 4 - 0
minmea.c

@@ -166,8 +166,12 @@ bool minmea_scan(const char *sentence, const char *format, ...)
                     goto parse_error;
                     goto parse_error;
 
 
                 if (value == -1) {
                 if (value == -1) {
+                    /* No digits were scanned. */
                     value = 0;
                     value = 0;
                     scale = 0;
                     scale = 0;
+                } else if (scale == 0) {
+                    /* No decimal point. */
+                    scale = 1;
                 }
                 }
                 if (sign)
                 if (sign)
                     value *= sign;
                     value *= sign;