diff options
author | Ryan Lortie <desrt@desrt.ca> | 2010-07-18 20:46:24 -0400 |
---|---|---|
committer | Ryan Lortie <desrt@desrt.ca> | 2010-07-18 20:46:24 -0400 |
commit | e4073ddfe2a03f4c9e0eb9f08fd997a2087b6f75 (patch) | |
tree | 26a507de5a29d81ce51e51eda9a7264b19aabecf /gvdb | |
parent | 46bed217bae3ffb796d9acde4c830ee3bc587852 (diff) | |
parent | df40747190a0fff4582c84b101f74e5da91f8f72 (diff) | |
download | dconf-e4073ddfe2a03f4c9e0eb9f08fd997a2087b6f75.tar.gz |
Merge remote branch 'gvdb/master'
Diffstat (limited to 'gvdb')
-rw-r--r-- | gvdb/gvdb-reader.c | 17 | ||||
-rw-r--r-- | gvdb/gvdb-reader.h | 3 |
2 files changed, 20 insertions, 0 deletions
diff --git a/gvdb/gvdb-reader.c b/gvdb/gvdb-reader.c index a043060..01ef756 100644 --- a/gvdb/gvdb-reader.c +++ b/gvdb/gvdb-reader.c @@ -534,6 +534,23 @@ gvdb_table_unref (GvdbTable *file) } } +/** + * gvdb_table_is_valid: + * @table: a #GvdbTable + * @returns: %TRUE if @table is still valid + * + * Checks if the table is still valid. + * + * An on-disk GVDB can be marked as invalid. This happens when the file + * has been replaced. The appropriate action is typically to reopen the + * file. + **/ +gboolean +gvdb_table_is_valid (GvdbTable *table) +{ + return !!table->data; +} + void gvdb_table_walk (GvdbTable *table, const gchar *key, diff --git a/gvdb/gvdb-reader.h b/gvdb/gvdb-reader.h index a29c16e..c960646 100644 --- a/gvdb/gvdb-reader.h +++ b/gvdb/gvdb-reader.h @@ -49,6 +49,9 @@ G_GNUC_INTERNAL gboolean gvdb_table_has_value (GvdbTable *table, const gchar *key); +G_GNUC_INTERNAL +gboolean gvdb_table_is_valid (GvdbTable *table); + typedef void (*GvdbWalkValueFunc) (const gchar *name, gsize name_len, GVariant *value, |