diff --git a/profiles/input/hog.c b/profiles/input/hog.c
index b9a14b9..a9830aa 100644
--- a/profiles/input/hog.c
+++ b/profiles/input/hog.c
uint16_t proto_mode_handle;
uint16_t ctrlpt_handle;
uint8_t flags;
- char *name;
};
struct report {
/* create uHID device */
memset(&ev, 0, sizeof(ev));
ev.type = UHID_CREATE;
- strncpy((char *) ev.u.create.name, hogdev->name ?
- hogdev->name : "bluez-hog-device",
- sizeof(ev.u.create.name) - 1);
+ if (device_name_known(hogdev->device))
+ device_get_name(hogdev->device, (char *) ev.u.create.name,
+ sizeof(ev.u.create.name));
+ else
+ strcpy((char *) ev.u.create.name, "bluez-hog-device");
ev.u.create.vendor = vendor;
ev.u.create.product = product;
ev.u.create.version = version;
uint16_t id)
{
struct hog_device *hogdev;
- char name[HCI_MAX_NAME_LENGTH + 1];
hogdev = g_try_new0(struct hog_device, 1);
if (!hogdev)
hogdev->id = id;
hogdev->device = btd_device_ref(device);
- device_get_name(device, name, sizeof(name));
- if (strlen(name) > 0)
- hogdev->name = g_strdup(name);
return hogdev;
}
g_slist_free_full(hogdev->reports, report_free);
g_attrib_unref(hogdev->attrib);
g_free(hogdev->hog_primary);
- g_free(hogdev->name);
g_free(hogdev);
}