From f0fd6fdaa846cee1572e05d99fae5579c692ffc3 Mon Sep 17 00:00:00 2001 From: Vinicius Costa Gomes Date: Fri, 23 Nov 2012 16:08:28 -0300 Subject: [PATCH] hog: Fix potencial segfault when sending a output report As UHID is not notified when the device is disconnected, it may be possible that an output report is forwarded when the device is not connected, one example, would be when the caps lock key is pressed on another keyboard. --- profiles/input/hog_device.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/profiles/input/hog_device.c b/profiles/input/hog_device.c index d231e00e9..994437f69 100644 --- a/profiles/input/hog_device.c +++ b/profiles/input/hog_device.c @@ -573,6 +573,9 @@ static void forward_report(struct hog_device *hogdev, DBG("Sending report type %d to device 0x%04X handle 0x%X", type, hogdev->id, report->decl->value_handle); + if (hogdev->attrib == NULL) + return; + if (report->decl->properties & ATT_CHAR_PROPER_WRITE) gatt_write_char(hogdev->attrib, report->decl->value_handle, data, size, output_written_cb, hogdev); -- 2.47.3