diff --git a/sysaudit/__init__.py b/sysaudit/__init__.py index af3e0a9..d44db37 100644 --- a/sysaudit/__init__.py +++ b/sysaudit/__init__.py @@ -17,8 +17,7 @@ else: def audit(event, *args): global _hooks # Grab a copy of hooks so we don't need to lock here - hooks = _hooks.copy() - for hook in hooks: + for hook in _hooks[:]: hook(event, args) def addaudithook(callback): diff --git a/sysaudit/_csysaudit.pyx b/sysaudit/_csysaudit.pyx index 3dec7c1..8a74c06 100644 --- a/sysaudit/_csysaudit.pyx +++ b/sysaudit/_csysaudit.pyx @@ -3,9 +3,8 @@ _hooks = list() def audit(event, *args): global _hooks - - hooks = _hooks.copy() - for hook in hooks: + # Grab a copy of hooks so we don't need to lock here + for hook in _hooks[:]: hook(event, args)