diff options
| -rw-r--r-- | FL/fl_utf8.h | 3 | ||||
| -rw-r--r-- | src/fl_utf8.cxx | 10 |
2 files changed, 12 insertions, 1 deletions
diff --git a/FL/fl_utf8.h b/FL/fl_utf8.h index 76c661c73..7a7489b38 100644 --- a/FL/fl_utf8.h +++ b/FL/fl_utf8.h @@ -179,6 +179,9 @@ FL_EXPORT int fl_open(const char *fname, int oflags, ...); FL_EXPORT int fl_open_ext(const char *fname, int binary, int oflags, ...); +/* Portable wrapper around unix-style close() function */ +FL_EXPORT int fl_close_fd(int fd); + /* OD: Portable UTF-8 aware unlink wrapper */ FL_EXPORT int fl_unlink(const char *fname); diff --git a/src/fl_utf8.cxx b/src/fl_utf8.cxx index b7801207e..6028f3172 100644 --- a/src/fl_utf8.cxx +++ b/src/fl_utf8.cxx @@ -354,7 +354,7 @@ int fl_putenv(const char* var) { \param[in] oflags other arguments are as in the standard open() function \return a file descriptor upon successful completion, or -1 in case of error. - \see fl_fopen(), fl_open_ext(). + \see fl_fopen(), fl_open_ext(), fl_close_fd(int fd). */ int fl_open(const char* fname, int oflags, ...) { int pmode; @@ -365,6 +365,14 @@ int fl_open(const char* fname, int oflags, ...) { return Fl::system_driver()->open(fname, oflags, pmode); } +/** Cross-platform function to close a file descriptor. + \return 0 in case of success, or -1 in case of error. + */ + +int fl_close_fd(int fd) { + return Fl::system_driver()->close_fd(fd); +} + /** Cross-platform function to open files with a UTF-8 encoded name. In comparison with fl_open(), this function allows to control whether |
