diff --git a/sync-music/libcue/libcue.lisp b/sync-music/libcue/libcue.lisp index 6a461a4..284b498 100644 --- a/sync-music/libcue/libcue.lisp +++ b/sync-music/libcue/libcue.lisp @@ -20,10 +20,9 @@ Only works on Unix systems with a /dev/fd/ filesystem." `(progn (finish-output *error-output*) (let ((,old-stderr (dup +stderr-fileno+))) - (prog1 - (progn - (freopen "/dev/null" "w" +stderr+) - ,@body) + (freopen "/dev/null" "w" +stderr+) + (unwind-protect + (progn ,@body) (freopen (format nil "/dev/fd/~D" ,old-stderr) "a" +stderr+))))) #-unix `(progn ,@body))