From e6688ea79ec34ec17012c155fd544f482fe71f44 Mon Sep 17 00:00:00 2001 From: Gabriel Cruz <8129788+gmelodie@users.noreply.github.com> Date: Mon, 13 Jul 2026 12:01:29 -0300 Subject: [PATCH 1/2] fix: add missing libplum_units.c --- libplum.nimble | 1 + 1 file changed, 1 insertion(+) diff --git a/libplum.nimble b/libplum.nimble index b749ede..c1eb7de 100644 --- a/libplum.nimble +++ b/libplum.nimble @@ -6,6 +6,7 @@ author = "Status Research & Development GmbH" description = "Nim binding for libplum (PCP, NAT-PMP, UPnP-IGD port mapping)" license = "Apache License 2.0 or MIT" installDirs = @["libplum", "vendor"] +installFiles = @["libplum_units.c"] ### Dependencies requires "nim >= 1.6.0", From acefbe424cf9d1f05f2d93533790c9ac4e034df8 Mon Sep 17 00:00:00 2001 From: Gabriel Cruz Date: Mon, 13 Jul 2026 13:28:57 -0300 Subject: [PATCH 2/2] fix: catch general exception --- libplum/plum.nim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libplum/plum.nim b/libplum/plum.nim index 2abc1b5..8b04450 100644 --- a/libplum/plum.nim +++ b/libplum/plum.nim @@ -243,10 +243,10 @@ proc createMapping*( try: # Wait for the signal's single fire (in mappingCallback) completed = await withTimeout(signal.wait(), timeout) - except CancelledError: + except CancelledError as e: # The signal was cancelled so it is safe to destroy and reclaim. await destroyAndReclaim(id, signal) - raise + raise e if not completed: # The signal was not fired so it is safe to destroy and reclaim.