summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgweather/gweather-timezone.c17
-rw-r--r--libgweather/gweather-timezone.h2
2 files changed, 4 insertions, 15 deletions
diff --git a/libgweather/gweather-timezone.c b/libgweather/gweather-timezone.c
index 3916dc5..e44ada8 100644
--- a/libgweather/gweather-timezone.c
+++ b/libgweather/gweather-timezone.c
@@ -48,6 +48,8 @@ struct _GWeatherTimezone {
int ref_count;
};
+G_DEFINE_BOXED_TYPE (GWeatherTimezone, gweather_timezone, gweather_timezone_ref, gweather_timezone_unref);
+
#define TZ_MAGIC "TZif"
#define TZ_HEADER_SIZE 44
#define TZ_TIMECNT_OFFSET 32
@@ -310,21 +312,6 @@ gweather_timezone_unref (GWeatherTimezone *zone)
}
}
-GType
-gweather_timezone_get_type (void)
-{
- static volatile gsize type_volatile = 0;
-
- if (g_once_init_enter (&type_volatile)) {
- GType type = g_boxed_type_register_static (
- g_intern_static_string ("GWeatherTimezone"),
- (GBoxedCopyFunc) gweather_timezone_ref,
- (GBoxedFreeFunc) gweather_timezone_unref);
- g_once_init_leave (&type_volatile, type);
- }
- return type_volatile;
-}
-
/**
* gweather_timezone_get_utc:
*
diff --git a/libgweather/gweather-timezone.h b/libgweather/gweather-timezone.h
index 260a2fc..7c7cb38 100644
--- a/libgweather/gweather-timezone.h
+++ b/libgweather/gweather-timezone.h
@@ -56,6 +56,8 @@ GWeatherTimezone *gweather_timezone_get_utc (void);
GWEATHER_EXTERN
GWeatherTimezone *gweather_timezone_get_by_tzid (const char *tzid);
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GWeatherTimezone, gweather_timezone_unref)
+
G_END_DECLS
#endif /* __GWEATHER_TIMEZONE_H__ */