diff --git a/jerry-core/ecma/builtin-objects/ecma-builtin-date.c b/jerry-core/ecma/builtin-objects/ecma-builtin-date.c index d21dccc2bc..e543468a1d 100644 --- a/jerry-core/ecma/builtin-objects/ecma-builtin-date.c +++ b/jerry-core/ecma/builtin-objects/ecma-builtin-date.c @@ -447,7 +447,7 @@ ecma_builtin_date_now (ecma_value_t this_arg __attr_unused___) /**< this argumen { ecma_number_t *now_num_p = ecma_alloc_number (); - *now_num_p = (ecma_number_t) jerry_port_get_current_time (); + *now_num_p = DOUBLE_TO_ECMA_NUMBER_T (jerry_port_get_current_time ()); return ecma_make_number_value (now_num_p); } /* ecma_builtin_date_now */ diff --git a/jerry-core/jerry-port.h b/jerry-core/jerry-port.h index 311ce0af6b..8c925902cb 100644 --- a/jerry-core/jerry-port.h +++ b/jerry-core/jerry-port.h @@ -18,7 +18,6 @@ #define JERRY_PORT_H #include -#include #include #ifdef __cplusplus @@ -99,7 +98,7 @@ bool jerry_port_get_time_zone (jerry_time_zone_t *tz_p); * * @return milliseconds since Unix epoch */ -uint64_t jerry_port_get_current_time (void); +double jerry_port_get_current_time (void); /** * @} diff --git a/targets/default/jerry-port-default-date.c b/targets/default/jerry-port-default-date.c index 490fe801ce..59c6490e74 100644 --- a/targets/default/jerry-port-default-date.c +++ b/targets/default/jerry-port-default-date.c @@ -43,11 +43,11 @@ bool jerry_port_get_time_zone (jerry_time_zone_t *tz_p) /** * Default implementation of jerry_port_get_current_time. */ -uint64_t jerry_port_get_current_time () +double jerry_port_get_current_time () { struct timeval tv; gettimeofday (&tv, NULL); - return ((uint64_t) tv.tv_sec) * 1000 + ((uint64_t) tv.tv_usec) / 1000; + return ((double) tv.tv_sec) * 1000.0 + ((double) tv.tv_usec) / 1000.0; } /* jerry_port_get_current_time */