Skip to content

Commit 01ac964

Browse files
committed
BUG: Prevent free'ing uninitialized pointer in DeviceEvents
1 parent 39c085c commit 01ac964

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

cuda_core/cuda/core/system/_event.pxi

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,8 @@ cdef class DeviceEvents:
125125
cdef intptr_t _device_handle
126126

127127
def __init__(self, device_handle: intptr_t, events: EventType | str | list[EventType | str]):
128+
self._event_set = 0
129+
128130
cdef unsigned long long event_bitmask
129131
if isinstance(events, (str, EventType)):
130132
events = [events]
@@ -150,7 +152,8 @@ cdef class DeviceEvents:
150152
nvml.device_register_events(self._device_handle, event_bitmask, self._event_set)
151153

152154
def __dealloc__(self):
153-
nvml.event_set_free(self._event_set)
155+
if self._event_set != 0:
156+
nvml.event_set_free(self._event_set)
154157

155158
def wait(self, timeout_ms: int = 0) -> EventData:
156159
"""

0 commit comments

Comments
 (0)