From c1878cbb82f95a813fb0c991eaf38fb0986186dc Mon Sep 17 00:00:00 2001 From: Namhyung Kim Date: Tue, 26 Oct 2010 14:23:09 -0700 Subject: [PATCH] --- yaml --- r: 217579 b: refs/heads/master c: 5d051decfc27cdf33fbbd2bfca958d0d2c903569 h: refs/heads/master i: 217577: c4b20c0f70fc10c75986d1011416f6fd68a1ddf9 217575: 62a28dd996666c746b58f9aa7287ddfb181c1d69 v: v3 --- [refs] | 2 +- trunk/lib/parser.c | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 7e95d1076281..ba4aeeedc9bc 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ea00c30b5b31baa91be29bee966204eccc15e9d3 +refs/heads/master: 5d051decfc27cdf33fbbd2bfca958d0d2c903569 diff --git a/trunk/lib/parser.c b/trunk/lib/parser.c index fb34977246bb..6e89eca5cca0 100644 --- a/trunk/lib/parser.c +++ b/trunk/lib/parser.c @@ -128,12 +128,13 @@ static int match_number(substring_t *s, int *result, int base) char *endp; char *buf; int ret; + size_t len = s->to - s->from; - buf = kmalloc(s->to - s->from + 1, GFP_KERNEL); + buf = kmalloc(len + 1, GFP_KERNEL); if (!buf) return -ENOMEM; - memcpy(buf, s->from, s->to - s->from); - buf[s->to - s->from] = '\0'; + memcpy(buf, s->from, len); + buf[len] = '\0'; *result = simple_strtol(buf, &endp, base); ret = 0; if (endp == buf)