diff options
Diffstat (limited to 'src/w32-fd-t.inc.h')
-rw-r--r-- | src/w32-fd-t.inc.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/w32-fd-t.inc.h b/src/w32-fd-t.inc.h index 4e3e66b..bc3df28 100644 --- a/src/w32-fd-t.inc.h +++ b/src/w32-fd-t.inc.h @@ -28,5 +28,20 @@ typedef void *assuan_fd_t; #define ASSUAN_INVALID_FD ((void*)(-1)) #define ASSUAN_INVALID_PID ((pid_t) -1) +#if GPGRT_HAVE_PRAGMA_GCC_PUSH +# pragma GCC push_options +# pragma GCC diagnostic ignored "-Wbad-function-cast" +#endif +static GPG_ERR_INLINE assuan_fd_t +assuan_fd_from_posix_fd (int fd) +{ + if (fd < 0) + return ASSUAN_INVALID_FD; + else + return (assuan_fd_t) _get_osfhandle (fd); +} +#if GPGRT_HAVE_PRAGMA_GCC_PUSH +# pragma GCC pop_options +#endif ##EOF## |