From bf2c5081813e157eb14c81e5b1f23fb7812a4ee5 Mon Sep 17 00:00:00 2001 From: Ryan Leavengood Date: Fri, 12 Sep 2008 06:30:07 +0000 Subject: [PATCH] Fixed CID 1289: if name cannot be strdup'ed, we should delete entry before returning B_NO_MEMORY; git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27435 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/drivers/input/usb_hid/DeviceList.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/add-ons/kernel/drivers/input/usb_hid/DeviceList.cpp b/src/add-ons/kernel/drivers/input/usb_hid/DeviceList.cpp index 206ec6b050..3916920844 100644 --- a/src/add-ons/kernel/drivers/input/usb_hid/DeviceList.cpp +++ b/src/add-ons/kernel/drivers/input/usb_hid/DeviceList.cpp @@ -45,8 +45,10 @@ DeviceList::AddDevice(const char *name, void *device) return B_NO_MEMORY; entry->name = strdup(name); - if (entry->name == NULL) + if (entry->name == NULL) { + delete entry; return B_NO_MEMORY; + } entry->device = device; entry->next = NULL;