From 3b383f34a883672bd80f03387f6396387ac70b2f Mon Sep 17 00:00:00 2001 From: Jiri Kosina Date: Thu, 18 Mar 2010 14:11:53 +0100 Subject: [PATCH] --- yaml --- r: 196293 b: refs/heads/master c: f77e347bd44e3640bdc56003b7402c63ddb1241d h: refs/heads/master i: 196291: 090a2f2933aa88dc423f11d9bbf0e5be0ceef0ab v: v3 --- [refs] | 2 +- trunk/drivers/hid/hid-core.c | 13 ++++--------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index 83a448bb8de4..48ffbf23b666 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1caea61eda5c4d446147aa0e712ba395bb6b81c3 +refs/heads/master: f77e347bd44e3640bdc56003b7402c63ddb1241d diff --git a/trunk/drivers/hid/hid-core.c b/trunk/drivers/hid/hid-core.c index c49aaa21e1a7..86cb2c47e9ea 100644 --- a/trunk/drivers/hid/hid-core.c +++ b/trunk/drivers/hid/hid-core.c @@ -1091,10 +1091,8 @@ int hid_input_report(struct hid_device *hid, int type, u8 *data, int size, int i buf = kmalloc(sizeof(char) * HID_DEBUG_BUFSIZE, GFP_ATOMIC); - if (!buf) { - report = hid_get_report(report_enum, data); + if (!buf) goto nomem; - } /* dump the report */ snprintf(buf, HID_DEBUG_BUFSIZE - 1, @@ -1107,17 +1105,14 @@ int hid_input_report(struct hid_device *hid, int type, u8 *data, int size, int i hid_debug_event(hid, buf); } hid_debug_event(hid, "\n"); + kfree(buf); +nomem: report = hid_get_report(report_enum, data); - if (!report) { - kfree(buf); + if (!report) return -1; - } - - kfree(buf); -nomem: if (hdrv && hdrv->raw_event && hid_match_report(hid, report)) { ret = hdrv->raw_event(hid, report, data, size); if (ret != 0)