Skip to content

Commit

Permalink
HID: logitech-hidpp: do not return the name length
Browse files Browse the repository at this point in the history
We do not make any use of the actual name length get through
hidpp_get_device_name(). Original patch by Benjamin Tissoires, this
patch also replaces a (now) unnecessary goto by return NULL.

Signed-off-by: Peter Wu <peter@lekensteyn.nl>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
  • Loading branch information
Peter Wu authored and Jiri Kosina committed Dec 11, 2014
1 parent 552f12e commit 02cc097
Showing 1 changed file with 6 additions and 13 deletions.
19 changes: 6 additions & 13 deletions drivers/hid/hid-logitech-hidpp.c
Original file line number Diff line number Diff line change
Expand Up @@ -461,7 +461,7 @@ static int hidpp_devicenametype_get_device_name(struct hidpp_device *hidpp,
return count;
}

static char *hidpp_get_device_name(struct hidpp_device *hidpp, u8 *name_length)
static char *hidpp_get_device_name(struct hidpp_device *hidpp)
{
u8 feature_type;
u8 feature_index;
Expand All @@ -473,28 +473,23 @@ static char *hidpp_get_device_name(struct hidpp_device *hidpp, u8 *name_length)
ret = hidpp_root_get_feature(hidpp, HIDPP_PAGE_GET_DEVICE_NAME_TYPE,
&feature_index, &feature_type);
if (ret)
goto out_err;
return NULL;

ret = hidpp_devicenametype_get_count(hidpp, feature_index,
&__name_length);
if (ret)
goto out_err;
return NULL;

name = kzalloc(__name_length + 1, GFP_KERNEL);
if (!name)
goto out_err;
return NULL;

*name_length = __name_length + 1;
while (index < __name_length)
index += hidpp_devicenametype_get_device_name(hidpp,
feature_index, index, name + index,
__name_length - index);

return name;

out_err:
*name_length = 0;
return NULL;
}

/* -------------------------------------------------------------------------- */
Expand Down Expand Up @@ -989,7 +984,6 @@ static void hidpp_overwrite_name(struct hid_device *hdev, bool use_unifying)
{
struct hidpp_device *hidpp = hid_get_drvdata(hdev);
char *name;
u8 name_length;

if (use_unifying)
/*
Expand All @@ -999,7 +993,7 @@ static void hidpp_overwrite_name(struct hid_device *hdev, bool use_unifying)
*/
name = hidpp_get_unifying_name(hidpp);
else
name = hidpp_get_device_name(hidpp, &name_length);
name = hidpp_get_device_name(hidpp);

if (!name)
hid_err(hdev, "unable to retrieve the name of the device");
Expand Down Expand Up @@ -1053,7 +1047,6 @@ static void hidpp_connect_event(struct hidpp_device *hidpp)
bool connected = atomic_read(&hidpp->connected);
struct input_dev *input;
char *name, *devm_name;
u8 name_length;

if (hidpp->quirks & HIDPP_QUIRK_CLASS_WTP)
wtp_connect(hdev, connected);
Expand All @@ -1080,7 +1073,7 @@ static void hidpp_connect_event(struct hidpp_device *hidpp)
return;
}

name = hidpp_get_device_name(hidpp, &name_length);
name = hidpp_get_device_name(hidpp);
if (!name) {
hid_err(hdev, "unable to retrieve the name of the device");
} else {
Expand Down

0 comments on commit 02cc097

Please sign in to comment.