Ludovic Courtès 4e431fda5f
services: shepherd: Remove ‘dynamic-wind’ in ‘call-with-*-file’.
Fixes <https://issues.guix.gnu.org/64653>.

The ‘dynamic-wind’ was causing files to be closed prematurely when
leaving the dynamic extent of PROC for instance via a delimited
continuation, using Fibers (that ‘dynamic-wind’ call was also
semantically incorrect in the first place).

* gnu/services/shepherd.scm (shepherd-configuration-file)
[config](call-with-file): Remove.
(call-with-input-file, call-with-output-file): Rewrite in terms of
‘call-with-port’.

Change-Id: Ica8af71a04f525a15be99985552063cb98cd6ee8
2024-01-05 17:27:20 +01:00
..
2024-01-05 17:17:33 +01:00
2023-12-22 00:31:41 +01:00