From 6a350fd788f3114629c9993aa4d1ec5c292182f5 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Fri, 10 Apr 2015 22:18:50 -0700 Subject: Functions open-fileno and fileno. * stream.c (fd_k): New keyword variable. (stdio_get_prop): Handle the :fd property by returning the file descriptor. (open_fileno): New function. (stream_init): Initialize fd_k, and register fileno and open-fileno. * stream.h (open_fileno): Declared. * txr.1: Documented open-fileno and fileno. * utf8.c (w_fdopen): New function. * utf8.h (w_fdopen): Declared. --- utf8.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'utf8.c') diff --git a/utf8.c b/utf8.c index 39d8a7f8..03aefa2e 100644 --- a/utf8.c +++ b/utf8.c @@ -387,6 +387,14 @@ FILE *w_freopen(const wchar_t *wname, const wchar_t *wmode, FILE *fold) return f; } +FILE *w_fdopen(int fd, const wchar_t *wmode) +{ + char *mode = utf8_dup_to(wmode); + FILE *f = fdopen(fd, mode); + free(mode); + return f; +} + int w_remove(const wchar_t *wpath) { char *path = utf8_dup_to(wpath); -- cgit v1.2.3