summaryrefslogtreecommitdiff
path: root/shared-module/displayio/__init__.c
diff options
context:
space:
mode:
authorDan Halbert <halbert@halwitz.org>2019-03-06 13:45:48 -0500
committerDan Halbert <halbert@halwitz.org>2019-03-06 13:45:48 -0500
commitc854f6617a0b343333635fe0cc91419daff7cdd5 (patch)
treee784d33bdf651927f5ea71029327ce966ae83c49 /shared-module/displayio/__init__.c
parent2eaa98ad7103ea4a03fc10fbcee7d2ec7a045a70 (diff)
check display-bus transaction status and act accordingly
Diffstat (limited to 'shared-module/displayio/__init__.c')
-rw-r--r--shared-module/displayio/__init__.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/shared-module/displayio/__init__.c b/shared-module/displayio/__init__.c
index 79014fb5a..58a6ce471 100644
--- a/shared-module/displayio/__init__.c
+++ b/shared-module/displayio/__init__.c
@@ -60,7 +60,11 @@ void displayio_refresh_displays(void) {
if (display->transpose_xy) {
swap(&c1, &r1);
}
- displayio_display_start_region_update(display, c0, r0, c1, r1);
+ // Someone else is holding the bus used to talk to the display,
+ // so skip update for now.
+ if (!displayio_display_start_region_update(display, c0, r0, c1, r1)) {
+ return;
+ }
uint16_t x0 = 0;
uint16_t x1 = display->width - 1;