[glib: 20/26] glib: Stop using g_get_current_time() in various places
- From: Philip Withnall <pwithnall src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib: 20/26] glib: Stop using g_get_current_time() in various places
- Date: Mon, 29 Jul 2019 13:01:59 +0000 (UTC)
commit 82e3e109dde46442222e6327576c4aefe0915e7b
Author: Philip Withnall <withnall endlessm com>
Date: Wed Jul 24 14:17:02 2019 +0100
glib: Stop using g_get_current_time() in various places
Signed-off-by: Philip Withnall <withnall endlessm com>
Helps: #1438
glib/gfileutils.c | 6 +++---
glib/grand.c | 10 +++++-----
glib/gslice.c | 5 ++---
3 files changed, 10 insertions(+), 11 deletions(-)
---
diff --git a/glib/gfileutils.c b/glib/gfileutils.c
index 16ee66384..275647509 100644
--- a/glib/gfileutils.c
+++ b/glib/gfileutils.c
@@ -1318,7 +1318,7 @@ get_tmp_file (gchar *tmpl,
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
static const int NLETTERS = sizeof (letters) - 1;
glong value;
- GTimeVal tv;
+ gint64 now_us;
static int counter = 0;
g_return_val_if_fail (tmpl != NULL, -1);
@@ -1333,8 +1333,8 @@ get_tmp_file (gchar *tmpl,
}
/* Get some more or less random data. */
- g_get_current_time (&tv);
- value = (tv.tv_usec ^ tv.tv_sec) + counter++;
+ now_us = g_get_real_time ();
+ value = ((now_us % G_USEC_PER_SEC) ^ (now_us / G_USEC_PER_SEC)) + counter++;
for (count = 0; count < 100; value += 7777, ++count)
{
diff --git a/glib/grand.c b/glib/grand.c
index fcbc6f42f..19339afc6 100644
--- a/glib/grand.c
+++ b/glib/grand.c
@@ -49,6 +49,7 @@
#include "gmem.h"
#include "gtestutils.h"
#include "gthread.h"
+#include "gtimer.h"
#ifdef G_OS_UNIX
#include <unistd.h>
@@ -220,7 +221,6 @@ g_rand_new (void)
guint32 seed[4];
#ifdef G_OS_UNIX
static gboolean dev_urandom_exists = TRUE;
- GTimeVal now;
if (dev_urandom_exists)
{
@@ -254,10 +254,10 @@ g_rand_new (void)
}
if (!dev_urandom_exists)
- {
- g_get_current_time (&now);
- seed[0] = now.tv_sec;
- seed[1] = now.tv_usec;
+ {
+ gint64 now_us = g_get_real_time ();
+ seed[0] = now_us / G_USEC_PER_SEC;
+ seed[1] = now_us % G_USEC_PER_SEC;
seed[2] = getpid ();
seed[3] = getppid ();
}
diff --git a/glib/gslice.c b/glib/gslice.c
index 7239bab3a..4c758c3be 100644
--- a/glib/gslice.c
+++ b/glib/gslice.c
@@ -595,9 +595,8 @@ magazine_cache_update_stamp (void)
{
if (allocator->stamp_counter >= MAX_STAMP_COUNTER)
{
- GTimeVal tv;
- g_get_current_time (&tv);
- allocator->last_stamp = tv.tv_sec * 1000 + tv.tv_usec / 1000; /* milli seconds */
+ gint64 now_us = g_get_real_time ();
+ allocator->last_stamp = now_us / 1000; /* milli seconds */
allocator->stamp_counter = 0;
}
else
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]