diff options
author | Maciej S. Szmigiero <mail@maciej.szmigiero.name> | 2025-02-22 11:04:42 +0100 |
---|---|---|
committer | Dan Williams <dan@ioncontrol.co> | 2025-05-23 18:46:32 -0500 |
commit | 42ead8826608f39491020863f4a4593918e3ae06 (patch) | |
tree | 689f9e737ffc0d99169b601a7c2414209c467404 | |
parent | 39f4cf77f25f345af4efd1e7ea31c1e02a67b433 (diff) |
log-object: Add possibility to reset logger id
Logger id (the one generated from build_id interface method and owner_id
property) is generated and cached the first time it is required, further
uses just return the cached value.
Add a cache reset method so if the interface implementer knows that its
logger id could have changed it could force its re-generation.
Signed-off-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
-rw-r--r-- | src/mm-log-object.c | 11 | ||||
-rw-r--r-- | src/mm-log-object.h | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/mm-log-object.c b/src/mm-log-object.c index ed41355f..b5e390f1 100644 --- a/src/mm-log-object.c +++ b/src/mm-log-object.c @@ -81,6 +81,17 @@ mm_log_object_set_owner_id (MMLogObject *self, priv = get_private (self); g_free (priv->owner_id); priv->owner_id = g_strdup (owner_id); + + mm_log_object_reset_id (self); +} + +void +mm_log_object_reset_id (MMLogObject *self) +{ + Private *priv; + + priv = get_private (self); + g_clear_pointer (&priv->id, g_free); } static void diff --git a/src/mm-log-object.h b/src/mm-log-object.h index 21ffc05e..9ddc7832 100644 --- a/src/mm-log-object.h +++ b/src/mm-log-object.h @@ -34,5 +34,6 @@ struct _MMLogObjectInterface const gchar *mm_log_object_get_id (MMLogObject *self); void mm_log_object_set_owner_id (MMLogObject *self, const gchar *owner_id); +void mm_log_object_reset_id (MMLogObject *self); #endif /* MM_LOG_OBJECT_H */ |