diff options
| author | Yukihiro Matsumoto <[email protected]> | 2012-06-05 08:58:50 +0900 |
|---|---|---|
| committer | Yukihiro Matsumoto <[email protected]> | 2012-06-05 08:58:50 +0900 |
| commit | 41baf125f21e3fd49a7849e4b8bbf99e06a31b9e (patch) | |
| tree | 6b6dce1735dea1a5101ff9519735ba486d5533d9 /src | |
| parent | a7707baecd7760252377e275bb325ea441d52676 (diff) | |
| download | mruby-41baf125f21e3fd49a7849e4b8bbf99e06a31b9e.tar.gz mruby-41baf125f21e3fd49a7849e4b8bbf99e06a31b9e.zip | |
Time#- should return time if operand is a number
Diffstat (limited to 'src')
| -rw-r--r-- | src/time.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/time.c b/src/time.c index 24d86bc33..862ff57a9 100644 --- a/src/time.c +++ b/src/time.c @@ -363,8 +363,11 @@ mrb_time_minus(mrb_state *mrb, mrb_value self) return mrb_float_value(f); } else { - mrb_get_args(mrb, "f", &f); - return mrb_time_make(mrb, mrb_obj_class(mrb, self), f, tm->timezone); + mrb_float f, f2; + mrb_get_args(mrb, "f", &f2); + + f = ((mrb_float)tm->sec + (mrb_float)tm->usec/1.0e6); + return mrb_time_make(mrb, mrb_obj_class(mrb, self), f-f2, tm->timezone); } } |
