diff options
| author | Yusuke Endoh <[email protected]> | 2017-12-12 00:47:56 +0900 |
|---|---|---|
| committer | Yusuke Endoh <[email protected]> | 2017-12-12 00:47:56 +0900 |
| commit | d96b2c9a7624b86951bb7270e142ff05d6023629 (patch) | |
| tree | 2f37eaadc9fb7770f16a5bd45d97e4b711f03364 /mrbgems/mruby-io/src | |
| parent | 85fc9b88d0eba4e2e0313e9091e540fe570ad39b (diff) | |
| download | mruby-d96b2c9a7624b86951bb7270e142ff05d6023629.tar.gz mruby-d96b2c9a7624b86951bb7270e142ff05d6023629.zip | |
Support MRB_WITHOUT_FLOAT to mruby-io and mruby-pack
Diffstat (limited to 'mrbgems/mruby-io/src')
| -rw-r--r-- | mrbgems/mruby-io/src/io.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/mrbgems/mruby-io/src/io.c b/mrbgems/mruby-io/src/io.c index c3c2e0b5b..b3166b11b 100644 --- a/mrbgems/mruby-io/src/io.c +++ b/mrbgems/mruby-io/src/io.c @@ -682,7 +682,11 @@ mrb_io_sysseek(mrb_state *mrb, mrb_value io) mrb_sys_fail(mrb, "sysseek"); } if (pos > MRB_INT_MAX) { +#ifndef MRB_WITHOUT_FLOAT return mrb_float_value(mrb, (mrb_float)pos); +#else + mrb_raise(mrb, E_IO_ERROR, "sysseek reached too far for MRB_WITHOUT_FLOAT"); +#endif } else { return mrb_fixnum_value(pos); } @@ -765,10 +769,12 @@ time2timeval(mrb_state *mrb, mrb_value time) t.tv_usec = 0; break; +#ifndef MRB_WITHOUT_FLOAT case MRB_TT_FLOAT: t.tv_sec = (time_t)mrb_float(time); t.tv_usec = (mrb_float(time) - t.tv_sec) * 1000000.0; break; +#endif default: mrb_raise(mrb, E_TYPE_ERROR, "wrong argument class"); |
