summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/gst/meson.build4
-rw-r--r--src/gst/totem-time-helpers.c9
2 files changed, 9 insertions, 4 deletions
diff --git a/src/gst/meson.build b/src/gst/meson.build
index 209fb6fd5..6ac3b0ab9 100644
--- a/src/gst/meson.build
+++ b/src/gst/meson.build
@@ -38,7 +38,7 @@ libtotem_gst_pixbuf_helpers_dep = declare_dependency(
libtotem_time_helpers = static_library(
'totemtimehelpers',
sources: 'totem-time-helpers.c',
- dependencies: glib_dep
+ dependencies: [ glib_dep, m_dep ]
)
libtotem_time_helpers_dep = declare_dependency(
@@ -53,7 +53,7 @@ exe = executable(
gst_test,
gst_test + '.c',
include_directories: top_inc,
- dependencies: glib_dep,
+ dependencies: [ glib_dep, m_dep ],
link_with: libtotem_time_helpers
)
diff --git a/src/gst/totem-time-helpers.c b/src/gst/totem-time-helpers.c
index 0d7754d4e..eed2bb2e6 100644
--- a/src/gst/totem-time-helpers.c
+++ b/src/gst/totem-time-helpers.c
@@ -25,6 +25,7 @@
*
*/
+#include <math.h>
#include <glib/gi18n.h>
#include <libintl.h>
@@ -38,15 +39,19 @@ totem_time_to_string (gint64 msecs,
gboolean force_hour)
{
int sec, min, hour, _time;
+ double time_f;
g_return_val_if_fail (msecs >= 0, NULL);
- _time = (int) (msecs / 1000);
/* When calculating the remaining time,
* we want to make sure that:
* current time + time remaining = total run time */
+ time_f = (double) msecs / 1000;
if (remaining)
- _time++;
+ time_f = ceil (time_f);
+ else
+ time_f = round (time_f);
+ _time = (int) time_f;
sec = _time % 60;
_time = _time - sec;