Skip to content

Commit 8ffd053

Browse files
committed
Improved lib unloading code
1 parent 6a2e67c commit 8ffd053

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

modules/libunboundWorker.js

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -277,15 +277,27 @@ function resolve(name, rrtype=Constants.RR_TYPE_A) {
277277
function load(paths) {
278278
// if library was already loaded, do a cleanup first before reloading it
279279
if (lib) {
280-
// delete old context
281-
ub_ctx_delete(ctx);
282-
ctx = ctypes.voidptr_t();
283-
// close library
284-
lib.close();
280+
try {
281+
// delete old context
282+
ub_ctx_delete(ctx);
283+
ctx = ctypes.voidptr_t();
284+
} catch (error) {
285+
log.error(`Failed to delete old context: ${error}; stack: ${error.stack}`);
286+
}
287+
try {
288+
// close library
289+
lib.close();
290+
} catch (error) {
291+
log.error(`Failed to close old library: ${error}; stack: ${error.stack}`);
292+
}
285293
lib = null;
286294
// close dependency of library
287295
for (let libDep of libDeps) {
288-
libDep.close();
296+
try {
297+
libDep.close();
298+
} catch (error) {
299+
log.error(`Failed to close old dependency: ${error}; stack: ${error.stack}`);
300+
}
289301
}
290302
libDeps = [];
291303
}

0 commit comments

Comments
 (0)