mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 15:06:14 +01:00
Add g_file_info_has_namespace
Need this to quickly see if we should set attributes from this GFileInfo in metadata extension.
This commit is contained in:
parent
0ed9201ad2
commit
becf4186e6
@ -484,6 +484,42 @@ g_file_info_has_attribute (GFileInfo *info,
|
||||
return value != NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
* g_file_info_has_namespace:
|
||||
* @info: a #GFileInfo.
|
||||
* @name_space: a file attribute namespace.
|
||||
*
|
||||
* Checks if a file info structure has an attribute in the
|
||||
* specified @name_space.
|
||||
*
|
||||
* Returns: %TRUE if @Ginfo has an attribute in @name_space,
|
||||
* %FALSE otherwise.
|
||||
*
|
||||
* Since: 2.22
|
||||
**/
|
||||
gboolean
|
||||
g_file_info_has_namespace (GFileInfo *info,
|
||||
const char *name_space)
|
||||
{
|
||||
GFileAttribute *attrs;
|
||||
guint32 ns_id;
|
||||
int i;
|
||||
|
||||
g_return_val_if_fail (G_IS_FILE_INFO (info), FALSE);
|
||||
g_return_val_if_fail (name_space != NULL, FALSE);
|
||||
|
||||
ns_id = lookup_namespace (name_space);
|
||||
|
||||
attrs = (GFileAttribute *)info->attributes->data;
|
||||
for (i = 0; i < info->attributes->len; i++)
|
||||
{
|
||||
if (GET_NS (attrs[i].attribute) == ns_id)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* g_file_info_list_attributes:
|
||||
* @info: a #GFileInfo.
|
||||
|
@ -749,6 +749,8 @@ void g_file_info_copy_into (GFileInfo *src_info,
|
||||
GFileInfo *dest_info);
|
||||
gboolean g_file_info_has_attribute (GFileInfo *info,
|
||||
const char *attribute);
|
||||
gboolean g_file_info_has_namespace (GFileInfo *info,
|
||||
const char *name_space);
|
||||
char ** g_file_info_list_attributes (GFileInfo *info,
|
||||
const char *name_space);
|
||||
gboolean g_file_info_get_attribute_data (GFileInfo *info,
|
||||
|
@ -377,6 +377,7 @@ g_file_info_new
|
||||
g_file_info_dup
|
||||
g_file_info_copy_into
|
||||
g_file_info_has_attribute
|
||||
g_file_info_has_namespace
|
||||
g_file_info_list_attributes
|
||||
g_file_info_get_attribute_type
|
||||
g_file_info_remove_attribute
|
||||
|
Loading…
Reference in New Issue
Block a user