diff options
| author | Radomir Dopieralski <openstack@sheep.art.pl> | 2018-05-23 21:39:06 +0200 |
|---|---|---|
| committer | Radomir Dopieralski <openstack@sheep.art.pl> | 2018-05-23 21:39:06 +0200 |
| commit | 240678e71403f54ab31452a7138dfd8ddcfc7f0c (patch) | |
| tree | 31ab1ad2b797649051d01324f75524850b050846 /shared-module/gamepad | |
| parent | edf2935ab166d3db765eec600ffccaedee79e5a5 (diff) | |
Avoid uninitialized gamepad on exception
Raise exceptions before the gamepad_singleton is created.
Also, use mp_raise for creating the exceptions.
Diffstat (limited to 'shared-module/gamepad')
| -rw-r--r-- | shared-module/gamepad/GamePad.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/shared-module/gamepad/GamePad.c b/shared-module/gamepad/GamePad.c index 540c882da..88ab23fc1 100644 --- a/shared-module/gamepad/GamePad.c +++ b/shared-module/gamepad/GamePad.c @@ -35,13 +35,12 @@ void gamepad_init(size_t n_pins, const mp_obj_t* pins) { - for (size_t i=0; i<8; ++i) { + for (size_t i = 0; i < 8; ++i) { gamepad_singleton->pins[i] = NULL; } gamepad_singleton->pulls = 0; - for (size_t i=0; i<n_pins; ++i) { + for (size_t i = 0; i < n_pins; ++i) { digitalio_digitalinout_obj_t *pin = MP_OBJ_TO_PTR(pins[i]); - raise_error_if_deinited(common_hal_digitalio_digitalinout_deinited(pin)); digitalio_direction_t direction = common_hal_digitalio_digitalinout_get_direction(pin); if (direction != DIRECTION_INPUT) { common_hal_digitalio_digitalinout_switch_to_input(pin, PULL_UP); |
