From 6467e3d40b0297f88ccbad8fa565aa3790c2931a Mon Sep 17 00:00:00 2001 From: Scott Shawcroft Date: Wed, 6 Sep 2017 14:49:30 -0700 Subject: shared-bindings: Prevent check_lock from being optimized away. (#240) Fixes #229 --- shared-bindings/busio/I2C.c | 1 + 1 file changed, 1 insertion(+) (limited to 'shared-bindings/busio/I2C.c') diff --git a/shared-bindings/busio/I2C.c b/shared-bindings/busio/I2C.c index a10a792fd..0431add78 100644 --- a/shared-bindings/busio/I2C.c +++ b/shared-bindings/busio/I2C.c @@ -110,6 +110,7 @@ STATIC mp_obj_t busio_i2c_obj___exit__(size_t n_args, const mp_obj_t *args) { STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(busio_i2c___exit___obj, 4, 4, busio_i2c_obj___exit__); static void check_lock(busio_i2c_obj_t *self) { + asm(""); if (!common_hal_busio_i2c_has_lock(self)) { mp_raise_RuntimeError("Function requires lock."); } -- cgit v1.2.3