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 d231e00..994437f 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); -- 1.8.0 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html