From 5e3e75ed7b400dd2c41f21533f46aedee3d9a3b3 Mon Sep 17 00:00:00 2001 From: dearblue Date: Sun, 17 Dec 2023 10:50:59 +0900 Subject: [PATCH] Set `EBADF` if `check_file_descriptor()` fails --- mrbgems/mruby-io/src/io.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mrbgems/mruby-io/src/io.c b/mrbgems/mruby-io/src/io.c index f796cf660..40457688b 100644 --- a/mrbgems/mruby-io/src/io.c +++ b/mrbgems/mruby-io/src/io.c @@ -680,6 +680,7 @@ check_file_descriptor(mrb_state *mrb, mrb_int fd) #if MRB_INT_MIN < INT_MIN || MRB_INT_MAX > INT_MAX if (fdi != fd) { + errno = EBADF; goto badfd; } #endif @@ -695,6 +696,7 @@ check_file_descriptor(mrb_state *mrb, mrb_int fd) } if (fdi < 0 || fdi > _getmaxstdio()) { + errno = EBADF; goto badfd; } #endif /* _WIN32 */