summaryrefslogtreecommitdiffstats
path: root/pciusb.c
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2005-03-14 12:33:04 +0000
committerPascal Rigaux <pixel@mandriva.com>2005-03-14 12:33:04 +0000
commitbbfea9f632b9ba389ea5d1d11af1c76a298a1bf6 (patch)
tree0b33bc7fb25604a6e75cb6874019d676fcf40b4f /pciusb.c
parent4fcbd8f87cab61e77ce04d958991ca59604b7e86 (diff)
downloadldetect-bbfea9f632b9ba389ea5d1d11af1c76a298a1bf6.tar
ldetect-bbfea9f632b9ba389ea5d1d11af1c76a298a1bf6.tar.gz
ldetect-bbfea9f632b9ba389ea5d1d11af1c76a298a1bf6.tar.bz2
ldetect-bbfea9f632b9ba389ea5d1d11af1c76a298a1bf6.tar.xz
ldetect-bbfea9f632b9ba389ea5d1d11af1c76a298a1bf6.zip
fix a memory leak
Diffstat (limited to 'pciusb.c')
-rw-r--r--pciusb.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/pciusb.c b/pciusb.c
index 8b6f706..3faf0de 100644
--- a/pciusb.c
+++ b/pciusb.c
@@ -49,8 +49,10 @@ extern int pciusb_find_modules(struct pciusb_entries *entries, const char *fpciu
p = buf + offset + 1;
q = strchr(p, '\t');
}
- if (strncmp(p, "unknown", q-p-1))
+ if (strncmp(p, "unknown", q-p-1)) {
+ ifree(e->module);
e->module = strndup(p,q-p-1);
+ }
/* special case for buggy 0x0 usb entry */
if (2 < strlen(q+2) && vendor != 0 && device != 0 && e->class_ != 0x90000d) { /* Hub class */
ifree(e->text); /* usb.c set it so that we display something when usbtable doesn't refer that hw*/