[ruby/io-console] Relaxed min: option warning
When `min: 0` is given to `IO#getch` with `time:` option, it is expected to return nil if timed out, and needed for source code the compatibility with unixen platforms. https://github.com/ruby/io-console/commit/a2afbe72bd
This commit is contained in:
parent
a79966743c
commit
37259e878f
@ -537,7 +537,13 @@ console_getch(int argc, VALUE *argv, VALUE io)
|
|||||||
timeout = rb_scheduler_timeout(&tv);
|
timeout = rb_scheduler_timeout(&tv);
|
||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
if (optp->vmin != 1) {
|
switch (optp->vmin) {
|
||||||
|
case 1: /* default */
|
||||||
|
break;
|
||||||
|
case 0: /* return nil when timed out */
|
||||||
|
if (optp->vtime) break;
|
||||||
|
/* fallthru */
|
||||||
|
default:
|
||||||
rb_warning("min option ignored");
|
rb_warning("min option ignored");
|
||||||
}
|
}
|
||||||
if (optp->intr) {
|
if (optp->intr) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user