diff options
author | Patrick Georgi <patrick@georgi-clan.de> | 2014-08-03 15:51:19 +0200 |
---|---|---|
committer | Patrick Georgi <patrick@georgi-clan.de> | 2014-08-04 06:59:51 +0200 |
commit | 1f68880e50a2b847838bbdc6916484f9fd86a681 (patch) | |
tree | 955c26ba1190793f6272314e9258bf5a0cb9e814 /util/sconfig/main.c | |
parent | 55391c422f8c45e40bb014d238769501aed65d56 (diff) | |
download | coreboot-1f68880e50a2b847838bbdc6916484f9fd86a681.tar.xz |
sconfig: more careful string resource handling
When parsing a string to numbers, we don't need to copy it.
And when creating strings, we should eventually free them.
Change-Id: I9023fef6e97a1830bc68502be32e79879c1617d4
Found-By: Coverity Scan
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/6484
Tested-by: build bot (Jenkins)
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Diffstat (limited to 'util/sconfig/main.c')
-rw-r--r-- | util/sconfig/main.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/util/sconfig/main.c b/util/sconfig/main.c index f6ec0e200b..44d491161d 100644 --- a/util/sconfig/main.c +++ b/util/sconfig/main.c @@ -195,6 +195,7 @@ struct device *new_chip(struct device *parent, struct device *bus, char *path) { parent->latestchild = new_chip; if (!parent->children) parent->children = new_chip; + free(chip_h); return new_chip; } @@ -225,7 +226,7 @@ struct device *new_device(struct device *parent, struct device *busdev, const in new_d->bustype = bus; char *tmp; - new_d->path_a = strtol(strdup(devnum), &tmp, 16); + new_d->path_a = strtol(devnum, &tmp, 16); if (*tmp == '.') { tmp++; new_d->path_b = strtol(tmp, NULL, 16); |