Merge remote-tracking branch 'origin/master' into develop

This commit is contained in:
QMK Bot 2021-04-10 16:34:58 +00:00
commit 34323ecd8b

View File

@ -81,17 +81,17 @@ static bool qmkusb_start_receive(QMKUSBDriver *qmkusbp) {
*/ */
static size_t _write(void *ip, const uint8_t *bp, size_t n) { static size_t _write(void *ip, const uint8_t *bp, size_t n) {
output_buffers_queue_t *obqueue = &((QMKUSBDriver *)ip)->obqueue; output_buffers_queue_t *obqueue = &((QMKUSBDriver *)ip)->obqueue;
chSysLock(); chSysLock();
const bool full = obqIsFullI(obqueue); const bool full = obqIsFullI(obqueue);
chSysUnlock(); chSysUnlock();
if (full || bqIsSuspendedX(obqueue)) { if (full || bqIsSuspendedX(obqueue)) {
/* Discard any writes while the queue is suspended or full, i.e. the hidraw /* Discard any writes while the queue is suspended or full, i.e. the hidraw
interface is not open. If we tried to send with an infinite timeout, we interface is not open. If we tried to send with an infinite timeout, we
would deadlock the keyboard otherwise. */ would deadlock the keyboard otherwise. */
return -1; return -1;
} }
return obqWriteTimeout(obqueue, bp, n, TIME_INFINITE); return obqWriteTimeout(obqueue, bp, n, TIME_INFINITE);
} }
static size_t _read(void *ip, uint8_t *bp, size_t n) { return ibqReadTimeout(&((QMKUSBDriver *)ip)->ibqueue, bp, n, TIME_INFINITE); } static size_t _read(void *ip, uint8_t *bp, size_t n) { return ibqReadTimeout(&((QMKUSBDriver *)ip)->ibqueue, bp, n, TIME_INFINITE); }