chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
5483a18
)
udevadm-hwdb: avoid leak in error path
author
Zbigniew Jędrzejewski-Szmek
<zbyszek@in.waw.pl>
Wed, 3 Apr 2013 20:48:46 +0000
(16:48 -0400)
committer
Zbigniew Jędrzejewski-Szmek
<zbyszek@in.waw.pl>
Fri, 5 Apr 2013 02:46:19 +0000
(22:46 -0400)
src/udev/udevadm-hwdb.c
patch
|
blob
|
history
diff --git
a/src/udev/udevadm-hwdb.c
b/src/udev/udevadm-hwdb.c
index a2df291a40643bdcd5b2acf1c3b0c105a22c3f0b..1e80b0d611c573b0a4098044195f497b1282d8fd 100644
(file)
--- a/
src/udev/udevadm-hwdb.c
+++ b/
src/udev/udevadm-hwdb.c
@@
-176,11
+176,11
@@
static int trie_insert(struct trie *trie, struct trie_node *node, const char *se
const char *key, const char *value) {
size_t i = 0;
int err = 0;
+ struct trie_node _cleanup_free_ *child = NULL;
for (;;) {
size_t p;
uint8_t c;
- struct trie_node *child;
for (p = 0; (c = trie->strings->buf[node->prefix_off + p]); p++) {
char *s;
@@
-254,6
+254,7
@@
static int trie_insert(struct trie *trie, struct trie_node *node, const char *se
}
node = child;
+ child = NULL; /* avoid cleanup */
i++;
}
out: