diff --git a/src/assuan.h.in b/src/assuan.h.in --- a/src/assuan.h.in +++ b/src/assuan.h.in @@ -546,7 +547,9 @@ #define ASSUAN_SYSTEM_NPTH_IMPL \ static void _assuan_npth_usleep (assuan_context_t ctx, unsigned int usec) \ - { (void) ctx; npth_usleep (usec); } \ + { ssize_t res; (void) ctx; npth_unprotect(); \ + res = __assuan_usleep (ctx, usec); \ + npth_protect(); } \ static ssize_t _assuan_npth_read (assuan_context_t ctx, assuan_fd_t fd, \ void *buffer, size_t size) \ { ssize_t res; (void) ctx; npth_unprotect(); \