8000 lv_timer.py: deinit only valid timer · wired8/lv_binding_micropython@3df6212 · GitHub
[go: up one dir, main page]

Skip to content

Commit 3df6212

Browse files
committed
lv_timer.py: deinit only valid timer
1 parent d0358cc commit 3df6212

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

driver/linux/lv_timer.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ class Timer:
132132

133133
def __init__(self, id):
134134
self.id = id
135+
self._valid = False
135136

136137
def init(self, mode=PERIODIC, period=-1, callback=None):
137138
self.tid = timer_create(self.id)
@@ -141,9 +142,12 @@ def init(self, mode=PERIODIC, period=-1, callback=None):
141142
self.handler_ref = self.handler
142143
# print("Sig %d: %s" % (SIGRTMIN + self.id, self.org_sig))
143144
self.action = sigaction(SIGRTMIN + self.id, self.handler_ref)
145+
self._valid = True
144146

145147
def deinit(self):
146-
timer_delete(self.tid)
148+
if self._valid:
149+
timer_delete(self.tid)
150+
self._valid = False
147151

148152
def handler(self, signum=-1):
149153
# print('Signal handler called with signal', signum)

0 commit comments

Comments
 (0)
0