summaryrefslogtreecommitdiffstats
path: root/parse-xml.c
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-11-22 13:31:52 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-11-22 13:31:52 -0800
commita6b35141e4d38b045182d0820cf4e3e9bd2143eb (patch)
treea74b590ed083a2191cbee0e6ee453aa9a67a6d44 /parse-xml.c
parent781266bf180c84f229798c0d420d4fc3a7a1d29b (diff)
downloadsubsurface-a6b35141e4d38b045182d0820cf4e3e9bd2143eb.tar.gz
Don't parse 32bit hex values with strtol
On a 32bit machine this will truncate values with MSB set to 0x7fffffff Fixes #164 (thanks to Linus for pointing me in the right direction) Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'parse-xml.c')
-rw-r--r--parse-xml.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/parse-xml.c b/parse-xml.c
index a7a44c5d0..97c93fc6d 100644
--- a/parse-xml.c
+++ b/parse-xml.c
@@ -656,7 +656,7 @@ static void double_to_permil(char *buffer, void *_i)
static void hex_value(char *buffer, void *_i)
{
uint32_t *i = _i;
- *i = strtol(buffer, NULL, 16);
+ *i = strtoul(buffer, NULL, 16);
}
static void get_tripflag(char *buffer, void *_tf)