Skip to content

Commit d832d04

Browse files
committed
Handle exceptions thrown by hesiod_resolve
1 parent a71816a commit d832d04

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

_hesiod.pyx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,14 +59,14 @@ def resolve(hes_name, hes_type):
5959
cdef int i
6060
cdef object py_result
6161
py_result = list()
62-
cdef char ** c_result
62+
cdef int err = 0
63+
cdef char ** c_result = NULL
6364

6465
name_str, type_str = map(str, (hes_name, hes_type))
6566

66-
__lookup_lock.acquire()
67-
c_result = hesiod_resolve(__context, name_str, type_str)
68-
err = errno
69-
__lookup_lock.release()
67+
with __lookup_lock:
68+
c_result = hesiod_resolve(__context, name_str, type_str)
69+
err = errno
7070

7171
if c_result is NULL:
7272
raise IOError(err, strerror(err))

0 commit comments

Comments
 (0)