mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-26 12:27:12 +00:00
hashtable: Fix length calculation in hexport_r
The length returned by hexport_r has a few redundant characters. This appears as NULL characters at the end so seems harmless. Remove the surplus counts in two places totlen += strlen(ep->key) + 2; I'm guessing the +2 here is for = and sep char. But there is another totlen += 2; line that does that. size = totletn + 1; Doesn't make sense and isn't justified with any comment. Signed-off-by: Zubair Lutfullah Kakakhel <zubair@resin.io>
This commit is contained in:
parent
e9ee7398d6
commit
f1b20acb4a
1 changed files with 2 additions and 2 deletions
|
@ -622,7 +622,7 @@ ssize_t hexport_r(struct hsearch_data *htab, const char sep, int flag,
|
||||||
|
|
||||||
list[n++] = ep;
|
list[n++] = ep;
|
||||||
|
|
||||||
totlen += strlen(ep->key) + 2;
|
totlen += strlen(ep->key);
|
||||||
|
|
||||||
if (sep == '\0') {
|
if (sep == '\0') {
|
||||||
totlen += strlen(ep->data);
|
totlen += strlen(ep->data);
|
||||||
|
@ -662,7 +662,7 @@ ssize_t hexport_r(struct hsearch_data *htab, const char sep, int flag,
|
||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
size = totlen + 1;
|
size = totlen;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check if the user provided a buffer */
|
/* Check if the user provided a buffer */
|
||||||
|
|
Loading…
Add table
Reference in a new issue