mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-24 22:46:15 +01:00
glib: Deprecate API using GTimeVal in gtimer.h
GTimeVal is not year-2038-safe. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #1438
This commit is contained in:
parent
e971b25c6a
commit
b8540db1bf
@ -286,7 +286,11 @@ g_usleep (gulong microseconds)
|
||||
*
|
||||
* Adds the given number of microseconds to @time_. @microseconds can
|
||||
* also be negative to decrease the value of @time_.
|
||||
*
|
||||
* Deprecated: 2.62: #GTimeVal is not year-2038-safe. Use `guint64` for
|
||||
* representing microseconds since the epoch, or use #GDateTime.
|
||||
**/
|
||||
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
||||
void
|
||||
g_time_val_add (GTimeVal *time_, glong microseconds)
|
||||
{
|
||||
@ -314,6 +318,7 @@ g_time_val_add (GTimeVal *time_, glong microseconds)
|
||||
}
|
||||
}
|
||||
}
|
||||
G_GNUC_END_IGNORE_DEPRECATIONS
|
||||
|
||||
/* converts a broken down date representation, relative to UTC,
|
||||
* to a timestamp; it uses timegm() if it's available.
|
||||
@ -364,10 +369,21 @@ mktime_utc (struct tm *tm)
|
||||
*
|
||||
* Any leading or trailing space in @iso_date is ignored.
|
||||
*
|
||||
* This function was deprecated, along with #GTimeVal itself, in GLib 2.62.
|
||||
* Equivalent functionality is available using code like:
|
||||
* |[
|
||||
* GDateTime *dt = g_date_time_new_from_iso8601 (iso8601_string, NULL);
|
||||
* gint64 time_val = g_date_time_to_unix (dt);
|
||||
* g_date_time_unref (dt);
|
||||
* ]|
|
||||
*
|
||||
* Returns: %TRUE if the conversion was successful.
|
||||
*
|
||||
* Since: 2.12
|
||||
* Deprecated: 2.62: #GTimeVal is not year-2038-safe. Use
|
||||
* g_date_time_new_from_iso8601() instead.
|
||||
*/
|
||||
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
||||
gboolean
|
||||
g_time_val_from_iso8601 (const gchar *iso_date,
|
||||
GTimeVal *time_)
|
||||
@ -528,6 +544,7 @@ g_time_val_from_iso8601 (const gchar *iso_date,
|
||||
|
||||
return *iso_date == '\0';
|
||||
}
|
||||
G_GNUC_END_IGNORE_DEPRECATIONS
|
||||
|
||||
/**
|
||||
* g_time_val_to_iso8601:
|
||||
@ -557,7 +574,13 @@ g_time_val_from_iso8601 (const gchar *iso_date,
|
||||
* If @time_ represents a date which is too large to fit into a `struct tm`,
|
||||
* %NULL will be returned. This is platform dependent. Note also that since
|
||||
* `GTimeVal` stores the number of seconds as a `glong`, on 32-bit systems it
|
||||
* is subject to the year 2038 problem.
|
||||
* is subject to the year 2038 problem. Accordingly, since GLib 2.62, this
|
||||
* function has been deprecated. Equivalent functionality is available using:
|
||||
* |[
|
||||
* GDateTime *dt = g_date_time_new_from_unix_utc (time_val);
|
||||
* iso8601_string = g_date_time_format_iso8601 (dt);
|
||||
* g_date_time_unref (dt);
|
||||
* ]|
|
||||
*
|
||||
* The return value of g_time_val_to_iso8601() has been nullable since GLib
|
||||
* 2.54; before then, GLib would crash under the same conditions.
|
||||
@ -566,7 +589,10 @@ g_time_val_from_iso8601 (const gchar *iso_date,
|
||||
* or %NULL if @time_ was too large
|
||||
*
|
||||
* Since: 2.12
|
||||
* Deprecated: 2.62: #GTimeVal is not year-2038-safe. Use
|
||||
* g_date_time_format_iso8601(dt) instead.
|
||||
*/
|
||||
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
||||
gchar *
|
||||
g_time_val_to_iso8601 (GTimeVal *time_)
|
||||
{
|
||||
@ -624,3 +650,4 @@ g_time_val_to_iso8601 (GTimeVal *time_)
|
||||
|
||||
return retval;
|
||||
}
|
||||
G_GNUC_END_IGNORE_DEPRECATIONS
|
||||
|
@ -62,14 +62,16 @@ gboolean g_timer_is_active (GTimer *timer);
|
||||
GLIB_AVAILABLE_IN_ALL
|
||||
void g_usleep (gulong microseconds);
|
||||
|
||||
GLIB_AVAILABLE_IN_ALL
|
||||
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
||||
GLIB_DEPRECATED_IN_2_62
|
||||
void g_time_val_add (GTimeVal *time_,
|
||||
glong microseconds);
|
||||
GLIB_AVAILABLE_IN_ALL
|
||||
GLIB_DEPRECATED_IN_2_62_FOR(g_date_time_new_from_iso8601)
|
||||
gboolean g_time_val_from_iso8601 (const gchar *iso_date,
|
||||
GTimeVal *time_);
|
||||
GLIB_AVAILABLE_IN_ALL
|
||||
GLIB_DEPRECATED_IN_2_62_FOR(g_date_time_format)
|
||||
gchar* g_time_val_to_iso8601 (GTimeVal *time_) G_GNUC_MALLOC;
|
||||
G_GNUC_END_IGNORE_DEPRECATIONS
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user